使用HTML Form和Dropzone JS时,$ _FILES返回空

Der*_*rek 5 javascript php forms jquery dropzone.js

我花了太多时间在这上面,并在stackoverflow上浏览了各种问题/答案.

我正在使用dropzone.js为我们的HTML/PHP表单添加基本的拖放上传功能.拖放工作正常,但是当提交表单或上传文件时,$ _FILES返回空,我无法弄明白.

我查了教程和没有运气,也查了一些Q&A的距离计算器张贴在这里,但没有任何帮助.

这是最简单形式的表单:

<form action="<? echo BASE_URL; ?>/process-uploads.php" method="POST" class="form-signin" role="form" enctype="multipart/form-data">

        <div class="upload_container dropzone">Drag & drop file here or

                <div class="fallback">
                    <input name="ad" type="file" />
                </div>
            </div><!--fileUpload btn btn-primary-->

        <div class="dropzone-previews"></div>

                <input class="btn btn-lg btn-primary btn-block btn-forward" style="background:#00a85a;" type="submit" name="submit" value="Next Step" />
            </form>
Run Code Online (Sandbox Code Playgroud)

JS是:

<script type="text/javascript">

var myDropzone = new Dropzone(".dropzone", { 
    url: "<? echo BASE_URL; ?>/process-uploads.php/",
    paramName: "ad",
    addRemoveLinks: true,
    //maxFiles: 1,
    autoProcessQueue: false,
    //uploadMultiple: false,
    acceptedFiles: "image/png",
    dictInvalidFileType: "This file type is not supported.",

});
</script>
Run Code Online (Sandbox Code Playgroud)

而process-upload.php只是检查是否发送了什么,但返回空:

<?php

if (!empty($_FILES)) {

    echo 'We have a file';

    if($_FILES['ad']) {
        echo 'We grabbed the ad<br />';

        echo '<pre>';
        var_dump($_FILES);
        echo '</pre>';
    }
}
?>
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.作为参考,我已经检查了enyo的教程,将表单与dropzone和php结合起来

vas*_*123 0

您需要添加name到您的字段:

<input type="file" name="ad" />
Run Code Online (Sandbox Code Playgroud)