dropzone.js没有读取所选文件

时间:2018-01-10 08:32:23

标签: php dropzone.js dropzone

当我尝试打印文件名时Dropzone.js没有读取所选文件,尽管文件正在上传目录中上传。

这是我的代码:

的index.php

<form action="upload.php" class="dropzone" method="post" id="dropzone" enctype="multipart/form-data">
                <div class="fallback">
                    <input name="file" type="file" id="file" multiple="" />
                </div>
            <button type="submit" name="submit" class="btn btn-success">Upload</button>
            </form>

upload.php的

$target_dir = "upload/";
$target_file = $target_dir . basename($_FILES["file"]["name"]);

echo $target_file;

if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_dir.$_FILES['file']['name'])) {
    $status = 1;
}

我收到此错误:

  

未定义索引:文件

我使用的是最新版本的dropzonejs,即5.2.0

修改

如果我从表单中删除了文件,则会上传文件:

<div class="fallback">
  <input name="file" type="file" id="file" multiple="" />
</div>

1 个答案:

答案 0 :(得分:0)

我通过添加提交按钮并将其放在表单之外并添加一些j来实现此目的。

<强>的index.php

<form action="upload.php" class="dropzone" id="my-dropzone"></form>
<button id="submit-all">Submit all files</button>

JS

Dropzone.options.myDropzone = {

  autoProcessQueue: false,

  init: function() {
    var submitButton = document.querySelector("#submit-all")
        myDropzone = this; // closure

    submitButton.addEventListener("click", function() {
      myDropzone.processQueue(); // Tell Dropzone to process all queued files.

  }
};