PHP 上传的文件显示错误

PHP file uploaded showing false

我有一个有多个文件上传的表单,每个输入都有唯一的名称,但是,当我尝试获取上传的文件时,我的测试是否显示错误。

请在下面找到代码。我不知道为什么会这样。

<label class="label" for="uploadfile">Contract:</label>
<input name="'.$ICP.'_uploadedfile" id="'.$ICP.'_uploadedfile" type="file" />

$ICP var 被循环出去,因为可以有多个实例,所以这样每个名称都是唯一的,并且在服务器端,为 ICP 的每个循环请求 POST。

while($icp_details = mysqli_fetch_array($ICP_exist_qry)){
     $ICP_ID = stripslashes($icp_details['ICP_ID']);
     if(!file_exists($_FILES[$ICP_ID."_uploadedfile"]['tmp_name']) || !is_uploaded_file($_FILES[$ICP_ID."_uploadedfile"]['tmp_name'])) {
             echo false;
     } else {
             echo true;
     }
}

我在检索其他已发布输入的值时没有任何问题,只是文件上传部分。

感谢您对此的任何帮助。 :)

注意:Ajax 正在提交表格。

要使用 Ajax(在本例中为 JQuery)正确上传文件,您需要使用 FormData 对象。下面的代码片段说明了如何使用它。它用于代替 .serialize() 或 .serializeArray() 方法。

$('#file-form').submit(function(e) {
  $.ajax({
    url: 'http://example.com/upload/',
    type: 'POST',
    data: new FormData(this),
    processData: false,
    contentType: false
  });
  e.preventDefault();
});