我已经制作了一个表单,我可以使用按钮添加多个上传字段。问题是按钮创建的字段内容不会上传到数据库。我无法弄清楚查询是问题还是我的for循环?按钮创建的字段与主上载字段的名称相同(uploaded[]
)。主上载字段确实已发送到数据库
这是第一个上传字段
<td><label for="code">file:</td><td><input name="uploaded[]" type="file" > </label>
可以像这样添加其他字段
function fncCreateElement(){
var mySpan = document.getElementById('mySpan');
var myElement1 = document.createElement('input');
myElement1.setAttribute('type',"file");
myElement1.setAttribute('name',"uploaded[]");
mySpan.appendChild(myElement1);
var myElement2 = document.createElement('<br>');
mySpan.appendChild(myElement2);
}
<input name="btnButton" type="button" value="+" onClick="JavaScript:fncCreateElement();">
<span id="mySpan"> </span>
这是我选择字段的循环
for($i=0; $i<count($_FILES["uploaded"]['name']); $i++) {
$tmpFilePath = $_FILES["uploaded"]['tmp_name'][$i];
$_FILES['uploaded']['name']) ;
if ($tmpFilePath != ""){
//Setup our new file path
$newFilePath = "upload/" . date("Ymd_his") . $_FILES["uploaded"]['name'][$i];
$naam2 = $_FILES["uploaded"]['name'][$i];
if(move_uploaded_file($tmpFilePath, $newFilePath)) {
$melding = "File uploaded";
}
else{
$tmpFilePath = "";
$melding = "No file.";
}
}
//Here comes the query to insert to database
}
上传文件的查询放在循环
中有没有人以这种形式看到问题?
我按照要求在$ _files上做了一个var_dump。第一个上传字段包含一个名为&#34; File1.txt&#34;的文本文件。按钮创建的第二个字段还包含一个名为&#34; File2.txt&#34;的文本文件。这是提交表单后var_dump的结果:
array(1) { ["uploaded"]=> array(5) { ["name"]=> array(1) { [0]=> string(9) "File1.txt" } ["type"]=> array(1) { [0]=> string(10) "text/plain" } ["tmp_name"]=> array(1) { [0]=> string(27) "C:\Windows\Temp\php39E3.tmp" } ["error"]=> array(1) { [0]=> int(0) } ["size"]=> array(1) { [0]=> int(0) } } }