我正在使用表单向用户上传文件到我的网站。我想让他们一次上传多张照片,所以我使用HTML5“多重”属性。使用PHP上传文件
我的HTML:
<form method="post" action="save.php">
<input type="file" name="uploads[]" multiple="multiple" />
<input type="submit" name="submit" value="submit"/>
</form>
save.php:
<?php
foreach ($_FILES['uploads']['name'] as $file) {
echo $file . "<br/>";
$file= time() . $_FILES['uploads']['name'];
$target= UPLOADPATH . $file;
move_uploaded_file($_FILES['uploads']['tmp_name'], $target)
or die('error with query 2');
}
但是,出于某些原因,当我运行该脚本,我得到一个错误说未定义指数:上传。还有一个错误,说我有一个为foreach()提供的无效参数。我可能是东错了?
感谢
UPDATE
好吧,设置enctype="mulitpart/form-data"
工作。现在,我在移动文件时遇到问题。我收到错误move_uploaded_file() expects parameter 1 to be string, array given
。我在这里做错了什么?
再次感谢
岂不是'的foreach($ _FILES [ '上传[]'] [ '名']为$文件){'? – sgroves
@sgroves:No.在表单名称中使用'[]'时,它将成为一个数组。 –
哦,我会认为多重属性会照顾到这一点。以前从未使用过多次上传。 – sgroves