Ejemplo n.º 1
0
function archiveZip($sFrom, $sTo, $sFilename, $zip = null, $racine = null)
{
    $bNew = 0;
    if (!$zip) {
        print "creation zip : {$sTo}/{$sFilename}.zip \n";
        $zip = new ZipArchive();
        $zip->open($sTo . '/' . $sFilename . '.zip', ZipArchive::CREATE);
        $bNew = 1;
    }
    print " {$sFrom} \n";
    if (is_dir($sFrom)) {
        print "  is_dir \n";
        print "   scandir {$sFrom} \n";
        $fichiers = scandir($sFrom);
        // On enleve . et ..
        unset($fichiers[0], $fichiers[1]);
        foreach ($fichiers as $f) {
            if (is_dir($sFrom . '/' . $f)) {
                $zip->addEmptyDir($racine . $f);
                archiveZip($sFrom . '/' . $f, $sTo, $sFilename, $zip, $racine . $f . '/');
            } else {
                print "    addFile {$sFrom}/{$f}\n";
                if (!$zip->addFile($sFrom . '/' . $f, $racine . $f)) {
                    print "    ! erreur \n";
                }
            }
        }
        //on ferme
        if ($bNew) {
            print "close zip {$sTo}/{$sFilename}.zip \n";
            if (!$zip->close()) {
                print "    ! close \n";
            }
        }
    }
}
Ejemplo n.º 2
0
         $r = "{$size} - {$time}";
         echo "{ \"file\":\"{$file}.sql\" , \"info\":\"{$r}\" }";
     }
 }
 if ($_GET['type'] == 'installer') {
     @unlink("../../../../.backup/{$_GET['file']}");
     $file = '../../../../system/installer.zip';
     extractZip($file, '../../../../system');
     if (!file_exists('../../../../.backup')) {
         mkdir('../../../../.backup');
     }
     backup_tables('*', '../../../../system/installer', 'data', true);
     archiveZip('../../../../system/installer', '../../../../system/installer.zip');
     $date = md5(date("Ymd:His"));
     $file = "installer-backup-{$date}.zip";
     $c = archiveZip('../../../../', "../../../../.backup/{$file}");
     if ($c) {
         $size = format_size(filesize("../../../../.backup/{$file}"));
         $time = date("Y/m/d H:i:s", filemtime("../../../../.backup/{$file}"));
         $r = "{$size} - {$time}";
         echo "{ \"file\":\"{$file}\" , \"info\":\"{$r}\" }";
     }
 }
 if ($_GET['type'] == 'delete') {
     if ($_GET['act'] == 'installer' || $_GET['act'] == 'db') {
         @unlink("../../../../.backup/{$_GET['file']}");
     }
     if ($_GET['act'] == 'tables') {
         @unlink("../../../../.backup/.table/{$_GET['file']}");
     }
 }