$use_wpdb = isset($_POST['use_wpdb']) && 'true' == $_POST['use_wpdb'] ? true : false; $backupName = wpa_backup_name(); $zipmode = isset($_POST['zipmode']) ? true : false; list($zipFileName, $zipSize) = CreateWPFullBackupZip($backupName, $zipmode, $use_wpdb); wpa_insert_data($zipFileName, $zipSize); $backZipPath = convertPathIntoUrl(WPCLONE_DIR_BACKUP . $zipFileName); $zipSize = bytesToSize($zipSize); echo <<<EOF <h1>Backup Successful!</h1> <br /> Here is your backup file : <br /> <a href='{$backZipPath}'><span>{$backZipPath}</span></a> ( {$zipSize} ) | <input type='hidden' name='backupUrl' class='backupUrl' value="{$backZipPath}" />
function wpa_wpc_get_db($zipfile, $zipmode) { $ret = array(); if ($zipmode || (!in_array('ZipArchive', get_declared_classes()) || !class_exists('ZipArchive'))) { wpa_wpc_log('extracting database using pclzip'); if (ini_get('mbstring.func_overload') && function_exists('mb_internal_encoding')) { $previous_encoding = mb_internal_encoding(); mb_internal_encoding('ISO-8859-1'); } require_once ABSPATH . 'wp-admin/includes/class-pclzip.php'; $z = new PclZip($zipfile); $database = $z->extract(PCLZIP_OPT_BY_NAME, 'wpclone_backup/database.sql', PCLZIP_OPT_EXTRACT_AS_STRING); $prefix = $z->extract(PCLZIP_OPT_BY_NAME, 'wpclone_backup/prefix.txt', PCLZIP_OPT_EXTRACT_AS_STRING); if (isset($previous_encoding)) { mb_internal_encoding($previous_encoding); } if ('ok' === $database[0]['status'] && 'ok' === $prefix[0]['status']) { $ret['database'] = $database[0]['content']; $ret['prefix'] = $prefix[0]['content']; } else { wpa_backup_error('pclunzip', $z->errorInfo(true), true); } return $ret; } else { $z = new ZipArchive(); if (true === $z->open($zipfile)) { wpa_wpc_log('extracting database using ziparchive'); $ret['database'] = $z->getFromName('wpclone_backup/database.sql'); $ret['prefix'] = $z->getFromName('wpclone_backup/prefix.txt'); if (false === $ret['database'] || false === $ret['prefix']) { wpa_backup_error('unzip', $z->getStatusString(), true); } $z->close(); return $ret; } else { wpa_backup_error('unzip', $z->getStatusString(), true); } } }