【发布时间】:2016-06-16 06:50:41
【问题描述】:
我有这个脚本来上传图像数组。我使用简单
<input type=file name=image[] />
该脚本假设能够上传多个图像的数组。
测试它,它在我的开发笔记本电脑上工作正常,我将它上传到我的服务器,但它不工作。服务器只能接受我上传的第一张图片。我怎么知道?我创建了一个仅包含 print_r($_FILES)
这是我的 print_r 的截断结果
Array
(
[image] => Array
(
[name] => Array
(
[0] => img001.jpg
[1] =>
)
[type] => Array
(
[0] => image/jpeg
[1] =>
)
[tmp_name] => Array
(
[0] => /tmp/phpFtBfBA
[1] =>
)
[error] => Array
(
[0] => 0
[1] => 4
)
[size] => Array
(
[0] => 4298
[1] => 0
)
)
)
查看源代码,复制并粘贴到另一台电脑,但将图像上传到同一台服务器,它又可以工作了。
我在 STACKOVERFLOW 中检查了所有“相同”的问题,我确定它不是服务器,因为如果我从其他地方发布图像,服务器可以接受图像上传。
在客户端 (HTML) 上,我检查 enctype=multipart/form-data ,关闭输入的 '/>' 但仍然缺少 $_FILES。
提前致谢
【问题讨论】:
-
你的字段应该是..
<input type="file" name="image[]" multiple="multiple"> -
检查您的
<form>是否具有多部分。示例:enctype="multipart/form-data" -
添加了多个=多个但仍然没有改进...但是即使没有“多个”,如果我从其他服务器(Windows)放置 html,相同的脚本也可以正常工作。我真的怀疑 html 文件是原因...也许以某种方式生成的html被修改了..
-
是的 Apoorv,我的
-
您的
print_r()输出缺少error键,从调试的角度来看,这可能是最有趣的。我想它实际上就在那里,而您在此处发布时只是省略了它。你能编辑问题并分享完整的数组吗?
标签: javascript php html arrays upload