这是我用于在php上传多个文件的html代码。我想将图像名称存储在数据库中,并将文件上传到文件夹中:
<input name="userfile[]" type="file" multiple="multiple"/><br />
<input name="userfile[]" type="file" multiple="multiple"/><br />
if(isset($_FILES['file']['tmp_name'])){
$num_files = count($_FILES['file']['tmp_name']);
for($i=0; $i < $num_files;$i++){
if(!is_uploaded_file($_FILES['file']['tmp_name'][$i])){
$messages[] = 'No file uploaded';
}
else{
if (file_exists("images/Locations" . $_FILES["file"]["name"]))
{
}
else
{
if ($_FILES["file"]["error"] > 0){
$file = fopen("test.txt","w");
echo fwrite($file,"Not uploaded");
fclose($file);
}
else{
move_uploaded_file($_FILES['file']['tmp_name'][$i],"images/Locations");
}
}
}
}
}
所以任何人都可以告诉我在哪里犯了错误。我想将图像的名称存储到数据库中,所以当我写错误时我怎么能这样做,它显示错误代码0,所以错误代码0是什么。
答案 0 :(得分:0)
您的输入文件类型名称为"userfile"
您正在使用PHP脚本
$_FILES['file']['tmp_name']
这就是问题所在。
相应地更改它们,以便在处理上传的脚本上使用正确的输入名称。
答案 1 :(得分:0)
我第一眼看到的错误是:
<input name="userfile[]" type="file" multiple/><br />
这应该只有一次因为多重属性,它根据所选图像的数量形成多维数组。
将if条件更改为
if(count($_FILES['userfile']['name']> 0)){
那应该给你一个开始。如果您发现任何问题,请告诉我。