Can I install both of these onto one website? It doesn’t offer an easy install option as with wordpress, so is this an FTP type deal or is there another menu to install easily that I’m missing.
Thanks
Can I install both of these onto one website? It doesn’t offer an easy install option as with wordpress, so is this an FTP type deal or is there another menu to install easily that I’m missing.
Thanks
Yes.
Check Tutorials section
I followed those but get an error message.
Error-1 - Bridge response error, please check the API docs or this ajax response.
Where do you get these errors?
In the File Manager? Try uploading the zip file installation via FileZilla then extracting with Unzipper script;
I got passed that error but now it isn’t letting me extract the file. It says the folder doesn’t exist, when I create the folder and try to extract, it says it can’t unzip because the folder already exists. LOL
Are you using unzipper?
Yep
nah unzipper is a script.
Upload unzipper.php and use it to extract your .zip file.
Else make a new file called unzipper.php and paste the code on
[code]<?php
/**
$timestart = microtime(TRUE);
$GLOBALS[‘status’] = array();
$unzipper = new Unzipper;
if (isset($_POST[‘dounzip’])) {
//check if an archive was selected for unzipping
$archive = isset($_POST[‘zipfile’]) ? strip_tags($_POST[‘zipfile’]) : ‘’;
$destination = isset($_POST[‘extpath’]) ? strip_tags($_POST[‘extpath’]) : ‘’;
$unzipper->prepareExtraction($archive, $destination);
}
if (isset($_POST[‘dozip’])) {
$zippath = !empty($_POST[‘zippath’]) ? strip_tags($_POST[‘zippath’]) : ‘.’;
// Resulting zipfile e.g. zipper–2016-07-23–11-55.zip
$zipfile = ‘zipper-’ . date(“Y-m-d–H-i”) . ‘.zip’;
Zipper::zipDir($zippath, $zipfile);
}
$timeend = microtime(TRUE);
$time = $timeend - $timestart;
/**
public function __construct() {
//read directory and pick .zip and .gz files
if ($dh = opendir($this->localdir)) {
while (($file = readdir($dh)) !== FALSE) {
if (pathinfo($file, PATHINFO_EXTENSION) === 'zip'
|| pathinfo($file, PATHINFO_EXTENSION) === 'gz'
|| pathinfo($file, PATHINFO_EXTENSION) === 'rar'
) {
$this->zipfiles[] = $file;
}
}
closedir($dh);
if (!empty($this->zipfiles)) {
$GLOBALS['status'] = array('info' => '.zip or .gz or .rar files found, ready for extraction');
}
else {
$GLOBALS['status'] = array('info' => 'No .zip or .gz or rar files found. So only zipping functionality available.');
}
}
}
/**
/**
}
/**
$zip = new ZipArchive;
// Check if archive is readable.
if ($zip->open($archive) === TRUE) {
// Check if destination is writable
if (is_writeable($destination . '/')) {
$zip->extractTo($destination);
$zip->close();
$GLOBALS['status'] = array('success' => 'Files unzipped successfully');
}
else {
$GLOBALS['status'] = array('error' => 'Error: Directory not writeable by webserver.');
}
}
else {
$GLOBALS['status'] = array('error' => 'Error: Cannot read .zip archive.');
}
}
/**
$filename = pathinfo($archive, PATHINFO_FILENAME);
$gzipped = gzopen($archive, "rb");
$file = fopen($filename, "w");
while ($string = gzread($gzipped, 4096)) {
fwrite($file, $string, strlen($string));
}
gzclose($gzipped);
fclose($file);
// Check if file was extracted.
if (file_exists($destination . '/' . $filename)) {
$GLOBALS['status'] = array('success' => 'File unzipped successfully.');
}
else {
$GLOBALS['status'] = array('error' => 'Error unzipping file.');
}
}
/**
}
/**
Class Zipper
Copied and slightly modified from http://at2.php.net/manual/en/class.ziparchive.php#110719
@author umbalaconmeogia
/
class Zipper {
/*
while (FALSE !== $f = readdir($handle)) {
// Check for local/parent path or zipping file itself and skip.
if ($f != ‘.’ && $f != ‘…’ && $f != basename(FILE)) {
$filePath = “$folder/$f”;
// Remove prefix from file path before add to zip.
$localPath = substr($filePath, $exclusiveLength);
if (is_file($filePath)) {
$zipFile->addFile($filePath, $localPath);
}
elseif (is_dir($filePath)) {
// Add sub-directory.
$zipFile->addEmptyDir($localPath);
self::folderToZip($filePath, $zipFile, $exclusiveLength);
}
}
}
closedir($handle);
}
/**
$z = new ZipArchive();
$z->open($outZipPath, ZipArchive::CREATE);
$z->addEmptyDir($dirName);
if ($sourcePath == $dirName) {
self::folderToZip($sourcePath, $z, 0);
}
else {
self::folderToZip($sourcePath, $z, strlen("$parentPath/"));
}
$z->close();
$GLOBALS['status'] = array('success' => 'Successfully created archive ' . $outZipPath);
}
}
?>
label {
display: block;
margin-top: 20px;
}
fieldset {
border: 0;
background-color: #EEE;
margin: 10px 0 10px 0;
}
.select {
padding: 5px;
font-size: 110%;
}
.status {
margin: 0;
margin-bottom: 20px;
padding: 10px;
font-size: 80%;
background: #EEE;
border: 1px dotted #DDD;
}
.status--ERROR {
background-color: red;
color: white;
font-size: 120%;
}
.status--SUCCESS {
background-color: green;
font-weight: bold;
color: white;
font-size: 120%
}
.small {
font-size: 0.7rem;
font-weight: normal;
}
.version {
font-size: 80%;
}
.form-field {
border: 1px solid #AAA;
padding: 8px;
width: 280px;
}
.info {
margin-top: 0;
font-size: 80%;
color: #777;
}
.submit {
background-color: #378de5;
border: 0;
color: #ffffff;
font-size: 15px;
padding: 10px 24px;
margin: 20px 0 20px 0;
text-decoration: none;
}
.submit:hover {
background-color: #2c6db2;
cursor: pointer;
}
-->
Status: <?php echo reset($GLOBALS['status']); ?>
Processing Time: <?php echo $time; ?> seconds
Enter extraction path without leading or trailing slashes (e.g. "mypath"). If left empty current directory will be used.
Enter path to be zipped without leading or trailing slashes (e.g. "zippath"). If left empty current directory will be used.
Unzipper version: <?php echo VERSION; ?>
[/code]Ok, Hurdle #6 LOL. Got everything extracted, database made according to the tutorial (except it wouldn’t let me pick php version 5.6, it defaulted to 7.0 and now I get this message when I try to install the forum.
Log in to your 000webhost account and change your php version from settings – general – php version.
And change it to 5.6…To make your SMF work!!!
Thanks, does it create a new database or do I have to put in the info on the one I created?
It doesn’t create any database automatically.
You need to enter your database details manually.