#24404 [Bgs]: File Upload Failure
ID: 24404
Updated by: cynic@php.net
Reported By: catalin at ips-software dot de
Status: Bogus
Bug Type: Unknown/Other Function
Operating System: Linux (mandrake 9.0)
PHP Version: 4.3.1
New Comment:
there seem to be two problems here:
* PHP does not signal the condition to the running script in any way.
you just get empty $_FILES/$_POST arrays
* the warning is not displayed, only logged, ignoring the
display_errors php.ini setting. all you can do is enable track_errors
and parse the $php_errormsg variable. a bit convoluted if you ask me.
the first item is debatable, the other one sure looks like a bug.
Previous Comments:
------------------------------------------------------------------------
[2003-06-30 07:14:05] derick@php.net
Sorry, but your problem does not imply a bug in PHP itself. For a
list of more appropriate places to ask for help using PHP, please
visit http://www.php.net/support.php as this bug system
is not the
appropriate forum for asking support questions.
Thank you for your interest in PHP.
Fix your php.ini settings, \"post_max_size\" and
\"upload_max_filesize\" for example.
------------------------------------------------------------------------
[2003-06-30 07:12:33] catalin at ips-software dot de
Description:
------------
Trying to upload files which exceed the post_max_size param from
php.ini fails without any errors transmitted to the PHP script that
handles the upload. This is the logged error.
[error] PHP Warning: POST Content-Length of 11184886 bytes exceeds
the limit of 8388608 bytes in Unknown on line 0
I did specify MAX_FILE_SIZE in the HTML form, before the
<Input type=file ... block.
The engine discards the download and gives no error.
The $_FILES and any other server vars are completely empty; no error
about the broken upload.
php.ini:
memory_limit = 48M
post_max_size = 8M
file_uploads = On
upload_max_filesize = 8M
allow_url_fopen = On
Reproduce code:
---------------
<FORM name='up' enctype='multipart/form-data' method='POST'
action='<?php echo $PHP_SELF ?>'>
<INPUT type='hidden' name='MAX_FILE_SIZE' value='5242880' />
<INPUT type='file' name='up_file' size='50' />
<INPUT type='submit' name='submit' />
</FORM>
<?php
if(!empty($submit)) {
print_r($_FILES);
phpinfo();
}
?>
Expected result:
----------------
Since I tryied to upload a file which exceeds both the MAX_FILE_SIZE
and the post_max_size I would have expected to find some sort of error
in the $_FILES['up_file']['error'] or anywhere else in the PHP
variables, but
I found no such error(s).
Actual result:
--------------
No result whatsoever except the log:
[error] PHP Warning: POST Content-Length of 11184886 bytes exceeds the
limit of 8388608 bytes in Unknown on line 0
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=24404&edit=1
Thread (5 messages)