【问题标题】:File size limitations on multiple file uploading多个文件上传的文件大小限制
【发布时间】:2011-07-04 12:37:52
【问题描述】:

我开始处理多张图片上传。您打开选择文件窗口并选择文件,同时按住 CTRL 选择多个文件。除了一部分,我得到了一切工作:

我无法限制一张图片的文件大小!我无法弄清楚如何抓取其中一张图像并将其与我想要的文件大小 (10 MB) 进行比较,如果文件大小大于 10 MB,则用户应该收到错误消息,如果小于 10 MB,则继续。 .

我该怎么做?多个文件完全不同,与一个文件不同。

【问题讨论】:

  • 您使用哪种客户端技术/框架通过 CTRL+单击选择多个文件来实现多文件上传?对我来说听起来像是闪光,但你在你的问题中没有说什么。
  • 它是 HTML 5。我只是使用了 multiple="multiple" 属性。
  • Client Checking file size using HTML5? - ref4linked 的可能重复项 - 您需要使用 javascript 来执行该客户端。
  • 检查参考的问题/答案,应该有对你非常有用的信息。

标签: php html size limit filesize


【解决方案1】:

好的,我想出了如何通过以下方式解决此问题。我使用了一个 foreach 循环来上传多个图像。我是这样用的:

foreach ($_FILES['file']['tmp_name'] as $key => $tmp_name) 

在循环中我做了以下事情:

$fileSize = $_FILES['file']['size'][$key];

if ($fileSize <= 10485760)
{
       // upload code
}

这让这个工作! :D

希望将来能为任何人服务...

【讨论】:

    【解决方案2】:

    在 php 中有一个标准机制可以限制上传文件的大小。您只需要添加表单参数 MAX_FILE_SIZE 并指定 size it bytes 作为其值:

    <form method="post" enctype="multipart/form-data">
     <input type="hidden" name="MAX_FILE_SIZE" value="100000" />
     <input type="file" name="excel_file"/>
    </form>
    

    【讨论】:

    • 我试过这个,我在服务器中收到了一个 45.5 兆字节的图像,但有一点延迟,但它就在那里:\
    【解决方案3】:

    我建议将所有文件作为一个数组,然后检查每个文件的大小,还请记住,您应该设置一个人一次可以上传的最大文件数。

    【讨论】:

      猜你喜欢
      • 2014-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-29
      • 2017-03-09
      • 2011-01-13
      • 1970-01-01
      • 2022-10-26
      相关资源
      最近更新 更多