【问题标题】:html image file upload failing silentlyhtml图像文件上传失败
【发布时间】:2010-09-15 00:55:45
【问题描述】:

我有一个表单,用户可以在其中输入要上传的多张图片以及一堆其他信息。在某些情况下,似乎有某种情况导致最后几张图片无法上传。例如,上传大约5张图片时测试表单,它们都可以正常上传。当有更多时,大约在 10 到 20 之间,并且这个数字确实有所不同,那么最后几个可能不会上传。我已经打印出 $_FILES 数组,并且选择的图像根本没有出现。所以看起来他们甚至没有被发送。

这些图片很小,只有大约 10-40k。我的upload_max_filesize 是2M,post_max_size 是8M,所以不可能。不仅如此,当表格中的前一个图像未上传时,这些相同的图像仍然无法上传 - 如果您将前 20 个文件输入留空,并为第 21 个选择某些内容,则该图像仍然不会上传。并且这已经用多个图像进行了测试,因此图像文件没有问题。注意 - 不完全是 21 个文件输入 - 它是可变的,用户可以添加更多或删除一些。

我还测试了多个浏览器和多台计算机。唯一的问题是这个问题只发生在我的生产服务器上,并且从未发生在我的开发服务器上,所以这可能是一个线索。它也始终是表单末尾的输入,有时是最后一个,有时是几个,具体取决于正在测试的表单输入。

单个表单中的文件输入数量是否存在固有限制?我还没有确定导致问题的确切数字。

【问题讨论】:

    标签: php html file-upload


    【解决方案1】:

    http://www.php.net/manual/en/ini.core.php

    max_file_uploads 20 PHP_INI_SYSTEM 自 PHP 5.2.12 起可用。

    【讨论】:

    • 是的,它有点新,只是在长期需要的服务器升级后遇到它;)
    • 现在为什么我不能用 Google 找到它?我尝试了所有我能想到的问题......这就是我来到这里的原因。
    • 我认为仍然提倡古老的 PHP 4 代码和实践的原因相同,PHP 环境有点混乱 ;) 在php.net/manual/en/features.file-upload.php 仍然没有提及它。也许我会提交一个文档错误。
    【解决方案2】:

    可能是max_execution_time 用于接收功能。我认为默认值通常是 30 秒,也许大型上传需要更长的时间?

    如果您的开发服务器是 localhost,那可能会非常快,并且在使用真正的远程服务器之前不会出现问题?

    【讨论】:

    • 不,页面加载速度很快,并且开发服务器不是本地主机。 Wrikken 的回答可能是正确的。
    猜你喜欢
    • 2023-03-09
    • 2012-08-29
    • 2013-06-09
    • 2012-03-18
    • 1970-01-01
    • 2012-07-17
    相关资源
    最近更新 更多