$_FILES数组未返回所有选定的文件


$_FILES array not returning all selected files

我想在php中上传多个文件。我有一个文件输入框,在它旁边我添加了更多的按钮。当用户点击按钮时,新文件上传就会到来。用户应该只能上传五个文件,如果五个文件上传控制将使用添加更多,那么警报将出现,用户不能添加另一个文件上传。现在,如果我选择所有五个文件并打印$_files数组,它将显示第一个和最后一个数组索引的文件名。代码如下:-

 Array
(
    [txtProductImage] => Array
        (
            [name] => Array
                (
                    [0] => 14200127851.jpg
                    [1] => 
                    [2] => 
                    [3] => 
                    [4] => 14200127864.jpg
                )
            [type] => Array
                (
                    [0] => image/jpeg
                    [1] => 
                    [2] => 
                    [3] => 
                    [4] => image/jpeg
                )
            [tmp_name] => Array
                (
                    [0] => C:'xampp'tmp'phpBCCE.tmp
                    [1] => 
                    [2] => 
                    [3] => 
                    [4] => C:'xampp'tmp'phpBCDF.tmp
                )
            [error] => Array
                (
                    [0] => 0
                    [1] => 4
                    [2] => 4
                    [3] => 4
                    [4] => 0
                )
            [size] => Array
                (
                    [0] => 575185
                    [1] => 0
                    [2] => 0
                    [3] => 0
                    [4] => 660387
                )
        )
)

我花了很多时间,但没能弄清楚问题是什么。任何帮助都将不胜感激。提前感谢

你能给我们展示更多的代码吗?你是如何获得文件的?你是如何发布文件的?您检查过数组元素的错误吗?您应该尝试从数组中打印它们,看看有什么错误。这将给你内部的看法和你犯了什么错误。也许是图片太大,或者是打字不正确。

这对我有效。

<?php
echo '<pre>';
ob_start();
var_dump('$_GET',$_GET,'$_POST',$_POST,'$_COOKIE',$_COOKIE,'$_FILES',$_FILES);
echo htmlentities(ob_get_clean()).'</pre>';
?>
<form action="?">
<input type="file" multiple name="files[]" >
<input type="submit" value="Submit">
</form>

编辑:或者如果你想要最大5,这也适用于我:

<input type="file" name="files[]" >
<input type="file" name="files[]" >
<input type="file" name="files[]" >
<input type="file" name="files[]" >
<input type="file" name="files[]" >

检查http://php.net/manual/en/features.file-upload.multiple.php