Reputation: 61
Whenever I try to upload a ZIP File via PHP, the Filesize is 0.
Everything else works: 7z, rar, png, xml
for example (I output filesize and location for testing):
File Location: /tmp/phpKNortG/feba81fed1ff5d2c04aa0c42975eb94f.7z
Filesize: 1284
File Location: /tmp/phpEWrmLT/feba81fed1ff5d2c04aa0c42975eb94f.zip
Filesize: 0
My form has enctype="multipart/form-data"
and the file is definitely not too big to be uploaded. (I've also set the memory limit to 128 MB to make sure it's not that)
ini_set('memory_limit', '128M');
set_time_limit(0);
$session_id = "3423840093480344";
mkdir('uploaded_files/' . $session_id);
for($i = 0; $i < count($_FILES['backup_file']['name']); $i++) {
$file_name = $_FILES['backup_file']['name'][$i];
$file_type = $_FILES['backup_file']['type'][$i];
$file_error = $_FILES['backup_file']['error'][$i];
$file_size = $_FILES['backup_file']['size'][$i];
$file_tmp = $_FILES['backup_file']['tmp_name'][$i];
print($file_name . "<br />");
print($file_type . "<br />");
print($file_error . "<br />");
print($file_size . "<br />");
print($file_tmp . "<br />");
if($file_error != 0) {
echo "Error-Code: ".$file_error;
continue;
}
move_uploaded_file($file_tmp, 'uploaded_files/' . $session_id);
}
The following code outputs this:
feba81fed1ff5d2c04aa0c42975eb94f.zip
application/zip
0
0
/tmp/phpEWrmLT
It even recognizes the MIME-Type, but the file is always zero bytes in size. (even before moving it with move_uploaded_file)
Is there any server setting that could prevent .zip files to be uploaded?
Upvotes: 3
Views: 2165
Reputation: 795
The memory_limit setting has no bearing on file uploads.
What are the values for your post_max_size and upload_max_filesize and how does the .zip filesize compare with those values?
Upvotes: 1