多文件表单上传


multi file form upload

现在第一件事是,我在网上到处都看到了在我试图做的事情不起作用的情况下该怎么办,我已经尝试了所有的解决方案,但它们都不起作用,我显然错过了一些东西。

我正在从一个表单字段上传多个文件。这非常有效,并运行一些调整大小的代码,等等删除tmp文件等等。

问题是,如果我不想上传任何文件,上传和图像处理脚本仍然运行,会抛出一堆错误。

我试过以下。。。再加上一些奇怪的变化:P

if($_FILES['gallery']['name']!=""){      // if files then...
include_once("gallery_edit_script.php");
  }

if (count($_FILES["gallery"]["name"] > 0)){   // if files count is more than 0 then...
include_once("gallery_edit_script.php");
  }

gallery_edit_script.php是include这一事实与此有关吗?

我用…检查了文件错误。。。

$_FILES["gallery"]["error"]

它显示没有选择要上传的文件,这正是我想要的。

有什么想法吗?

感谢所有看过这个的人。

干杯

添加了HTML,但就像我说的上传很好,当我想发布表单而不包括要上传的文件时,我希望它跳过库脚本。这是在一个编辑页面上,所以用户已经提交了表单、添加到数据库的数据和上传的文件,然后回来想要编辑数据,但不上传文件。

HTML(简化为有成堆的字段等)

<form action="inventory_edit_lease.php" enctype="multipart/form-data" name="myForm" id="myForm" method="post">
Gallery Photos <input class="input-file" type="file" name="gallery[]" id="gallery" multiple="multiple" />
<input class="button-edititem" type="submit" name="submit" id="button" value="" onclick="javascript:return validateMyForm();"/>
</form>

很抱歉,我第一次没有添加HTML,表单很好用,所以我不认为我真的需要它;)

很少有检查列表

  1. 确保您已将<input type="file" />命名为gallery:

    <input type="file" />

  2. 确保<form>标记的method="post"action=""指向正确的URL。

  3. 此外,请确保您的<form>标签具有enctype="multipart/form-data",否则您将无法通过该表单上传文件!

我们需要先查看您文件的HTML代码,然后才能提出建议。确保你已经遵循了上面的清单,即使它不起作用,也要发布代码并告诉我们!

如果没有HTML表单,我只是猜测:

  • 对于使用相同名称上传的多个文件,您必须将其归档为
  • 在服务器端,您将收到它们作为$_FILES["gallery"]

    $_FILES["gallery"]将是一个元素阵列,例如:

     foreach($_FILES["gallery"] as $file){
         var_export($file);
     }
    

对于那些感兴趣的人来说,这是行之有效的:)

我从另一个线程得到了这个,如果($_FILES[';FILES';][';name';]!=")运行if FILES,don';如果没有文件让头疼,则不运行

if(!empty($_FILES['gallery']['tmp_name']))
 {
 include_once("gallery_edit_script.php");
 }
   else
   {
   header("Location: inventory_list_sales.php");
   }

有趣的是,我在另一个网站上尝试了这个,我正在使用几乎相同的代码,因为我复制了所有文件,只编辑了小部分,但它不起作用。哈哈

感谢大家的帮助:)