如何不上传空文件输入

时间:2014-09-10 13:20:53

标签: php file upload

我的HTML表单中有很多文件输入。所有这些都在阵列中。

例如:

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

如何在PHP中找到空输入?

3 个答案:

答案 0 :(得分:1)

在上传文件

时,在每个文件中使用此功能
<?php
if(!empty($_FILES['attach'][$i]))
{

//upload function

}

?>

答案 1 :(得分:0)

所有字段(甚至是空字段)都会被发送到服务器,每个字段都会有一个包含其信息的数组条目(tmp_namenamesize,{{1 }},...)虽然它是空的。

只需针对error(int:4)常量检查$_FILES['attach']['error'][$i]

有关文件上传错误消息的详细信息,请参阅the official PHP manual page

请注意,对于一堆名称为UPLOAD_ERR_NO_FILE的文件,数组将如下所示(在本例中为三个文件输入字段):

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

答案 2 :(得分:0)

我建议检查大小,如果大于0,则上传或以您认为合适的方式处理

foreach($_FILES['attach']['size'] as $file) {
    if($file > 0) {
        // Upload
    }
}