ID: 12060
Updated by: yohgaki
Old Summary: $userfile['name'][0] not set !
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Closed
Bug Type: Documentation problem
Operating System: Linux 2.4.5
PHP Version: 4.0.6
New Comment:
Fixed.
Previous Comments:
------------------------------------------------------------------------
[2002-01-28 05:56:52] [EMAIL PROTECTED]
The new file uploading mechanism is only available in php 4.2.0 and
higher (which is not yet released).
Derick
------------------------------------------------------------------------
[2002-01-28 02:52:58] [EMAIL PROTECTED]
Ok, so I went through all the trouble to make my own RPM for the update
to 4.1.1. This bug is still there, $userfile is a 1 dimensional array.
Not the multi-dimensional array the docs say it's supposed to be.
-= Jay =-
------------------------------------------------------------------------
[2002-01-27 17:49:05] [EMAIL PROTECTED]
This doesn't appear to be a Documentation bug. I don't get anything but
first level in the array, which is the temporary file name....
Uploading 5 files, with the tag:
<input name="files[]" type="file"><br>
a vardump($files) shows me:
array(5) {
[0]=> string(38)
"/usr/local/data/PhotoUploads/php5LPZGT"
[1]=> string(38)
"/usr/local/data/PhotoUploads/phpqVsa8A"
[2]=> string(4)
"none"
[3]=> string(4)
"none"
[4]=> string(4)
"none"
}
This may have been fixed in a newer version, but 4.0.6 is the latest
RPM you can get for a RedHat 7 system. If it's fixed in a future
version, I'd like to know, before I go through the trouble of a non-rpm
update to find out. (:
-= Jay =-
------------------------------------------------------------------------
[2001-07-11 14:00:30] [EMAIL PROTECTED]
Should be $userfile[0]['name']!
Do a var_dump() on userfile to check it out.
doc-TODO: add example in the docs about this.
------------------------------------------------------------------------
[2001-07-11 12:40:45] [EMAIL PROTECTED]
http://www.php.net/manual/en/features.file-upload.multiple.php
says that:
"For instance, assume that the filenames
/home/test/review.html and /home/test/xwp.out are
submitted. In this case, $userfile_name[0] would contain
the value review.html, and $userfile_name[1] would contain
the value xwp.out. Similarly, $userfile_size[0] would
contain review.html's filesize, and so forth.
$userfile['name'][0], $userfile['tmp_name'][0],
$userfile['size'][0], and $userfile['type'][0] are also
set. "
But they are not set !
Here's the script that requites 2 pages, form.html and
file-upload.php
form.php
========
<html>
<head></head>
<body>
<form action="file-upload.php" method="post"
enctype="multipart/form-data">
Send these files:<br>
<input name="userfile[]" type="file"><br>
<input name="userfile[]" type="file"><br>
<input type="submit" value="Send files">
</form>
</body>
</html>
file-upload.php
===============
<?php
// We will not upload, just show the variables
print_r ( $HTTP_POST_FILES );
print_r ( $userfile );
?>
You will notice that $userfile is a one dimensional array
that contains only the names of the temporary files
uploaded.
My PHP is:
==========
./configure
Anderson Fortaleza
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=12060&edit=1