Hallo allerseits,
habe da ein Problem mit PCLZIP. Habe ein PHP Skript, das mir mit Hilfe von PCLZIP alle ZIP Dateien in einem Ordner ausliest und diese dann entzippt. Das klappt auch super. Das Problem ist nur, dass manchmal aus noch ungeklärten Gründen fehlerhafte ZIP Dateien in diesen Ordner hochgeladen werden, die man auch durch runterladen auf dem PC nicht öffnen kann. Da kommt dann im Skript natürlich der Fehler PCL_ZIP_BAD_FORMAT... Das ist auch klar, nur bricht das Skript dann ab, auch wenn viele "gute" ZIPs im Ordner sind. Ich müsste es nun also so machen, dass das Skript überprüfen kann, ob die ZIP Datei auch entzippt werden kann (also okay ist), und wenn das nicht so ist, soll die Datei eben nicht entzippt, sondern in einen Fehlerordner verschoben werden.
Wie kann ich in meinem Skript abfragen, ob die ZIP Datei in Ordnung ist?
//.......................................................
// Erste Zip Datei im Verzeichnis suchen
//.......................................................
if ($handle = opendir('../verzeichnis)) {
while ($file = readdir ($handle)) {
if ($file != "." && $file != "..") {
$zufinden = ".zip";
if(ereg($zufinden, $file)){
$gefunden = "ok";
$dateiname = $file; }
}}
}closedir($handle);
//.......................................................
// Enzippen einer Datei
//.......................................................
$datei = '../verzeichnis/'.$dateiname;
require_once('pclzip.lib.php');
$archive = new PclZip($datei);
if ($archive->extract('../parsing_flowfact/') == 0) {
die("Error : ".$archive->errorInfo(true));
}
Danke für eure Hilfe,
Lg
Michael
habe da ein Problem mit PCLZIP. Habe ein PHP Skript, das mir mit Hilfe von PCLZIP alle ZIP Dateien in einem Ordner ausliest und diese dann entzippt. Das klappt auch super. Das Problem ist nur, dass manchmal aus noch ungeklärten Gründen fehlerhafte ZIP Dateien in diesen Ordner hochgeladen werden, die man auch durch runterladen auf dem PC nicht öffnen kann. Da kommt dann im Skript natürlich der Fehler PCL_ZIP_BAD_FORMAT... Das ist auch klar, nur bricht das Skript dann ab, auch wenn viele "gute" ZIPs im Ordner sind. Ich müsste es nun also so machen, dass das Skript überprüfen kann, ob die ZIP Datei auch entzippt werden kann (also okay ist), und wenn das nicht so ist, soll die Datei eben nicht entzippt, sondern in einen Fehlerordner verschoben werden.
Wie kann ich in meinem Skript abfragen, ob die ZIP Datei in Ordnung ist?
//.......................................................
// Erste Zip Datei im Verzeichnis suchen
//.......................................................
if ($handle = opendir('../verzeichnis)) {
while ($file = readdir ($handle)) {
if ($file != "." && $file != "..") {
$zufinden = ".zip";
if(ereg($zufinden, $file)){
$gefunden = "ok";
$dateiname = $file; }
}}
}closedir($handle);
//.......................................................
// Enzippen einer Datei
//.......................................................
$datei = '../verzeichnis/'.$dateiname;
require_once('pclzip.lib.php');
$archive = new PclZip($datei);
if ($archive->extract('../parsing_flowfact/') == 0) {
die("Error : ".$archive->errorInfo(true));
}
Danke für eure Hilfe,
Lg
Michael
Kommentar