Hi!
Ich versuche mich schon seit Tagen an einer Möglichkeit, einen kleinen Zip-Upload in PHP zu realisieren. Das Script an sich ist prinzipiell kein Problem, doch scheint es Probleme mit Zugriffsrechten zu geben, die ich auf den aktiven Safemode zurückführe. Allerdings erhalte ich beim Ausführen des Scripts auch keine Fehlermeldung vom Safemode...
Das Script sieht insgesamt so aus:
PHP
<form action="" enctype="multipart/form-data" method="post">
<input type="file" name="upload_images" />
<input type="submit" name="send" />
</form>
<?php
ERROR_REPORTING(E_ALL);
$send_image_path = "img/articles";
//Bildupload
if(!empty($_FILES['upload_images']['name'])){
$file = $_FILES['upload_images']['name'];
$path = realpath($send_image_path) . "/" . $file;
copy($_FILES['upload_images']['tmp_name'], $path);
chmod($path, 0777);
$ZipPointer = zip_open($path);
if($ZipPointer){
while($GezippteDatei = zip_read($ZipPointer)){
if(zip_entry_open($ZipPointer, $GezippteDatei, "r")){
$FilePointer = fopen(zip_entry_name($GezippteDatei), "w");
$write = fwrite($FilePointer, zip_entry_read($GezippteDatei, zip_entry_filesize($GezippteDatei)));
fclose($FilePointer);
zip_entry_close($GezippteDatei);
}
}
zip_close($ZipPointer);
if($write !== false){
$img_success = "1";
}else{
$img_success = "0";
}
}else{
$img_success = "0";
}
//Zip löschen
unlink($path);
}
?>
Alles anzeigen
Die Fehlermeldung die ausgeworfen wird:
Code
[B]Warning[/B]: fopen(BILDNAME) [[URL='http://lizzardsweb.de/function.fopen']function.fopen[/URL]]: failed to open stream: Permission denied in [B]/srv/www/XXX/upload.php[/B] on line [B]29[/B]
[B]Warning[/B]: fwrite(): supplied argument is not a valid stream resource in [B]/srv/www/XXX/[/B][B]upload[/B][B].php[/B] on line [B]30[/B]
[B]Warning[/B]: fclose(): supplied argument is not a valid stream resource in [B]/srv/www/XXX/[/B][B]upload[/B][B].php[/B] on line [B]31[/B]
Liegt das Problem wirklich am Safemode? Wenn ja, kann man trotzdem einen Zip-Upload ermöglichen ohne Safemode deaktivieren zu müssen?
Grüße,
Lizzard