使用表单多次上传图片时出现问题。
代码可以上传1张图片var_dump
$_POST
&$_FILES
已经确定并在action_gallery.php
中完成了),但是当我想要上传更多时,它会出错超过1个文件(不再有var_dump
并且我的数组pictures[]
得到了未定义的索引错误。)
我失去了所有信息:不再有$_POST
,没有$_FILES
...除了当我只有1张照片时一切顺利。有人知道我的错误在哪里?
HTML:
<form method="post" action="modele/action_gallery.php" enctype="multipart/form-data">
<table id="table_header_diaporama">
<tr>
<td align="center" colspan="3">
<input type="hidden" name="MAX_FILE_SIZE" value="5000000" /><input class="text_profile_form" type="file" name="pictures[]" multiple="multiple" />
<input type="hidden" name="MAX_FILE_SIZE" value="5000000" /><input class="text_profile_form" type="file" name="pictures[]" multiple="multiple" />
<input type="hidden" name="MAX_FILE_SIZE" value="5000000" /><input class="text_profile_form" type="file" name="pictures[]" multiple="multiple" />
</td>
</tr>
</table>
</form>
的php.ini:
file_uploads = On
max_file_uploads = 20
upload_max_filesize = 100M
post_max_size = 100M
非常感谢。
修改:我设法通过 $_POST
恢复enctype="multipart/form-data"
切换 enctype="application/x-www-form-urlencoded"
。现在,检查内容,看看我是否一切正常。
Edit2:让$count = count($_FILES['pictures']['name']); echo '$count: '.$count;
给我0;所以,我的问题仍然没有解决! $_POST
现在好了,但$_FILES
仍然是空的!
Edit3:我终于恢复了 enctype="multipart/form-data"
关闭计算机的夜晚......之后它正在工作......不知道为什么知道它有效! (用1或多于1个输入行来回答timgavin!)。
答案 0 :(得分:0)
我认为具有相同名称的多个表单元素可能会相互覆盖。
如果您只选择带有第一个和/或第二个元素的图像 - 并且因为它们都具有相同的名称 - 也许第三个元素可能会用空值覆盖前两个元素。
由于您正在使用multiple="multiple"
,请尝试仅使用一个表单元素,看看会发生什么。
<form method="post" action="modele/action_gallery.php" enctype="multipart/form-data">
<table id="table_header_diaporama">
<tr>
<td align="center" colspan="3">
<input type="hidden" name="MAX_FILE_SIZE" value="5000000" />
<input class="text_profile_form" type="file" name="pictures[]" multiple="multiple" />
</td>
</tr>
</table>
</form>