2015-11-01 3 views
0

Я пробовал все, и я просто не могу получить dropzone.js для отправки файлов на сервер. Я чувствую, что должно быть что-то очень важное, что я не получаю здесь.Dropzone.js не отправляет файлы

Все, что я пытаюсь сделать прямо сейчас, - это автоматически загружать файлы, когда пользователь их выбирает (стилизация не имеет значения), но, похоже, это не вызывает запуск моего php-кода, и я остаюсь предположить, что он не отправляется (целевая страница совпадает с целевой страницей).

HTML:

<?php 
    if (!empty($_FILES)) { 
     print "Files exist"; 
    } 
?> 

<ul class="submission_container"> 
    <li id="file_01" title="Click here to upload files"> 
     <div class="ledger_preview"> 
      <form action="/file-upload" class="dropzone" id="file-one"> 
       + 
      </form> 
     </div> 
    </li> 
</ul> 

Javascript:

Dropzone.options.fileOne = { 
    url: 'submit.php', 
    paramName: 'file_01', 
    method: 'POST', 
    parallelUploads: 1, 
    clickable: true, 
    maxFilesize: 7, 
    acceptedFiles: 'application/pdf', 
    autoProcessQueue: true, 
    dictDefaultMessage: '', 
    dictFallbackMessage: '', 
    dictFallbackText: '', 
    dictFallbackText: '', 
    dictInvalidFileType: '', 
    dictFileTooBig: '', 
    dictResponseError: '', 
    dictCancelUpload: '', 
    dictCancelUploadConfirmation: '', 
    dictRemoveFile: '', 
    dictMaxFilesExceeded: '', 

    accept: function(file, done) { 
     done(); 
    } 
} 

CSS:

li { 
    list-style-type: none; 
} 

.submission_container { 
    margin: 0 auto; 
} 

.ledger_preview { 
    height: 7.647em; 
    width: 12em; 
    display: inline-block; 
    border: 1em solid #A3A3A3; 
} 

.dropzone { 
    text-align: right; 
    font-size: 8em; 
    font-weight: 900; 
    color: #A3A3A3; 
    display: inline-block; 
    width: 100%; 
    height: 100%; 
} 

FSFiddle (без PHP): http://jsfiddle.net/qo4cLeco/

+0

Вы видите какие-либо сетевые запросы в веб-инспекторе при попытке загрузить? Какой браузер вы используете? –

+0

Я использую Chrome - Кажется, что нет сетевых запросов. Я запускаю все это локально над WAMP, если это имеет значение. – tomc

+0

Я не думал, что мне нужно, поскольку они не показывают их в своем примере. http://www.dropzonejs.com/#usage – tomc

ответ

0

Я вижу, что у вас есть параметр - action в форме и параметре url в Dropzone.

параметр Url в Dropzone has to be specified on elements other than form (or when the form doesn't have an action attribute).

В вашем JsFiddle примере пост выполнен в/файловой загрузки - вы уверены, что вы ждете загруженные файлы там? Или вы ждете их в submit.php?

Я считаю, что все должно работать нормально, если вы удалите тот, который вам не нужен, - либо параметр действия в форме, либо параметр url в конфигурации DropZone.

0

Так получилось, что я неправильно понял механику происходящего. Файлы отправлялись через вызов ajax, пока я ожидал перезагрузки страницы. Код, похоже, работает, когда я заменяю свой PHP кодом, необходимым для прикрепления файлов к серверу.

Смежные вопросы