从预览PHP JS中删除一些文件后如何上传多个文件

时间:2019-03-05 04:55:24

标签: javascript php jquery

我上传了3个图片(文件),在预览中,我不喜欢1个已删除的文件,其余2个和  它应该上传2,但是当我按“提交”按钮3时,会将文件插入数据库

请帮助我不工作

html代码

   <form action="" method="post" enctype="multipart/form-data">  
    <div id="filediv">
   <input name="upload[]" type="file"  id="upload" multiple="multiple" />
    </div>
     <input type="submit" value="Upload Image" name="submit"/>  
</form>  

jQuery代码

     function deletePreview(ele, i) {
   "use strict";

    try {
     $(ele).parent().remove();
   filesToUpload.splice(i, 1);
    } catch (e) {
    console.log(e.message);
    }
  }

  $("#upload").on('change', function() {
     "use strict";


    var filesToUpload = [];

    if (this.files.length >= 1) {
    $("[id^=previewImg]").remove();
    $.each(this.files, function(i, img) {
      var reader = new FileReader(),
        newElement = $("<div id='previewImg" + i + "' class='abcd'><img /></div>"),
        deleteBtn = $("<span class='delete' onClick='deletePreview(this, " + i + ")'>delete</span>").appendTo(newElement),
        preview = newElement.find("img");

      reader.onloadend = function() {
        preview.attr("src", reader.result);
        preview.attr("alt", img.name);
      };
       var f = document.getElementById("upload").files[i];


       filesToUpload.push(f);

      if (img) {
        reader.readAsDataURL(img);
      } else {
        preview.src = "";
      }

      newElement.appendTo("#filediv");
    });
  }
});

php代码

   $total = count($_FILES['upload']['name']);

  for( $i=0 ; $i < $total ; $i++ ) {

 $tmpFilePath = $_FILES['upload']['tmp_name'][$i];

  if ($tmpFilePath != ""){
   $newFilePath = "./upload_files/" . $_FILES['upload']['name'][$i];

   if(move_uploaded_file($tmpFilePath, $newFilePath)) {

  }
 }
}

预先感谢

0 个答案:

没有答案