• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Dateien vom Webspace auf anderen FTP sichern

VollDerNewb

Gesperrt
Hallo,

wie kann ich meine Dateien auf meinem Webspace in ein archive packen und dann auf einen anderen ftp server schicken, alles ohne das ich etwas eingeben muss, sondern nur noch einen cronjob darauß machen muss.

Könnt ihr mir ansätze liefern? Habe gesucht, aber ich finde nicht so recht wa ich brauche.

viele grüße
 
Code:
[COLOR=#000000][COLOR=#0000BB]<?php
$zip [/COLOR][COLOR=#007700]= new [/COLOR][COLOR=#0000BB]ZipArchive[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]$res [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]$zip[/COLOR][COLOR=#007700]->[/COLOR][COLOR=#0000BB]open[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]'test.zip'[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]ZipArchive[/COLOR][COLOR=#007700]::[/COLOR][COLOR=#0000BB]CREATE[/COLOR][COLOR=#007700]);
if ([/COLOR][COLOR=#0000BB]$res [/COLOR][COLOR=#007700]=== [/COLOR][COLOR=#0000BB]TRUE[/COLOR][COLOR=#007700]) {[/COLOR][COLOR=#007700]
    [/COLOR][COLOR=#0000BB]$zip[/COLOR][COLOR=#007700]->[/COLOR][COLOR=#0000BB]addFile[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]'*[/COLOR][COLOR=#DD0000]'[/COLOR][COLOR=#007700]);
    [/COLOR][COLOR=#0000BB]$zip[/COLOR][COLOR=#007700]->[/COLOR][COLOR=#0000BB]close[/COLOR][COLOR=#007700]();
    echo [/COLOR][COLOR=#DD0000]'ok'[/COLOR][COLOR=#007700];
} else {
    echo [/COLOR][COLOR=#DD0000]'failed'[/COLOR][COLOR=#007700];
}
[/COLOR][COLOR=#0000BB]?>
[/COLOR][/COLOR]

Und dann muss ich es von ftp auf den anderen schicken? Kann ich das mit "*" machen, das er alle dateien einfügt?

Viele grüße
 
Schau dich im Manual zu den FTP-Funktionen um:
PHP: FTP - Manual :idea:

Danke soweit, aber wie kann ich den kompletten inhalt meines document roots in die zip datei packen?

Versuch bis jetzt:
<?php
$all = "/";
// Timestamp
$timestamp = time();
$datum = date("d-m-Y",$timestamp);
$uhrzeit = date("H-i",$timestamp);
$stamp = "ftpsave-$datum-$uhrzeit.zip";
// mach es Zipp :)
$zip = new ZipArchive;
$res = $zip->open($stamp, ZipArchive::CREATE);
if ($res === TRUE) { $zip->addFile($all);
$zip->close();
echo "<br>";
echo 'ok';
echo "<br>";
echo "Saved as $stamp";
} else {
echo 'failed';
}

?>
Gruß
 
Zuletzt bearbeitet:
Versuchs mal mit * statt / - oder lies den Inhalt des Verzeichnisses komplett ein und füge jede eingelesene Datei einzeln ein.
 
PHP:
<?

$zip = new ZipArchive;
$zipfile = 'backup-'.date('Ymd').'.zip';
$res = $zip->open($zipfile, ZipArchive::CREATE);

$dh = opendir('.');

while($file = readdir($dh)) {
	if(is_file($file) && $file != 'index.php') {
		$zip->addFile($file, $file);
		echo 'added: '.$file."\n";
	}
}

$zip->close();
closedir($dh);

?>

Funzt.
 
Zurück
Oben