da mein neuer server kein normales zip unterstützt, sondern nur bzip2 installiert hat. Muss ich meine ganzen skripts jetzt auf bzip umschreiben.
Hab mir zwar schon ein beispielskripts durgesehen(PHP: Bzip2 - Manual), aber versteh noch nicht ganz wie ich MEHRERE dateien auf einmal komprimieren soll.

Das hier muss ich umschreiben:
Zip-Datei LESEN:
PHP-Code:
if($dateityp=='zip')
{ $zip = zip_open("dings");
while($zip_entry = zip_read($zip))
{ $entry = zip_entry_open($zip,$zip_entry);
$filename = zip_entry_name($zip_entry);
$target_dir = $uploaddir;
$filesize = zip_entry_filesize($zip_entry);
if (is_dir($target_dir) || mkdir($target_dir))
{ if ($filesize > 0)
{ $contents = zip_entry_read($zip_entry, $filesize);
$newdateiname=add_picture_to_galerie($_SESSION['gid']);
file_put_contents($uploaddir.$newdateiname,$contents);
resize($newdateiname,$_SESSION['gid']);
}
}
}
}
PHP-Code:
function get_zip_gallery($gid)
{ // neues Zip Objekt erstellen
$zipfile = new zipfile();
//Galerienamen holen
$sql="SELECT Name FROM bildergalerie WHERE BildergalerieID='$gid'";
$result=mysql_query($sql);
$row=mysql_fetch_object($result);
$galeriename=$row->Name;
//Dateinamen der Bilder zur Bildergalerie holen
$sql="SELECT Dateiname FROM bilder WHERE BildergalerieID='$gid'";
$result=mysql_query($sql);
while($row=mysql_fetch_object($result))
{ //Dateinamen bereinigen
$filename=$row->Dateiname;
$clearfilename = substr($filename, strrpos ($filename, "/") + 1);
// Datei einlesen
$handle = fopen ("../../bildergalerie/".$gid."/normale/".$filename, "r");
$content = fread ($handle, filesize ("../../bildergalerie/".$gid."/normale/".$filename));
fclose ($handle);
// Datei in Zipfile speichern
$zipfile->addFile($content, $clearfilename, filemtime("../../bildergalerie/".$gid."/normale/".$filename));
}
header("HTTP/1.1 200 OK");
header("Content-Type: application/force-download");
header('Content-Disposition: attachment; filename="'.$galeriename.'.zip"');
header("Content-Transfer-Encoding: binary");
// Zip File senden
return $zipfile->file();
}
grüße, philipp
Einen Kommentar schreiben: