使用附加数据进行文件上传(Javascript,PHP)

时间:2017-08-23 11:24:15

标签: javascript php file-upload jquery-file-upload

我想上传文件并将其他数据(数组)发送到php脚本。

这是HTML和Javascript代码:

<input type="file" name="fileinput" id="fileinput">
<button class="btn btn-primary" id="btnupload">upload</button>
<script>

$('#btnupload').click(function(){
 var formData = new FormData();
 formData.append("MacsToChangeImage", selectedMACs.toString()); //selectedMACs is the array which i want to send
 formData.append("userfile", $('#fileinput').files[0]);
 $.ajax({
  url: "ChangeImagesFunction.php",
  type:'POST',
  data: formData,
  processData: false,
  cententType: false,
  success: function(data)
  {
      alert('success' + data);
  },
  error:function(response){
    alert(JSON.stringify(response));
  }
 });
});

</script>

这里是PHP代码:

if(!empty($_FILES)) {
 $target_dir = "img/epd_uploads/";
 $temporaryFile = $_FILES['userfile']['tmp_name'];
 $targetFile =  $target_dir . $_FILES['userfile']['name'];
 if(!move_uploaded_file($temporaryFile,$targetFile))  {
   echo "Error occurred while uploading the file to server!";
 }else{
    if (isset($_POST['MacsToChangeImage'])){
    //Name of the Uploaded File
    $ChangeImageToPHP = $_FILES['userfile']['name'];
    //Get the Array
    $MacsToChangeImageStr = $_POST['MacsToChangeImage'];
    $MacsToChangeImagePHP = explode(",",$MacsToChangeImageStr);
    }
  }
}

我认为到目前为止HTML和Javascript部分还不错。但我不确定如何处理PHP部分。我在做什么/失踪?

还有其他方法可以实现我的计划吗?

提前谢谢

0 个答案:

没有答案