Я пытался заставить этот dropzone.js работать на веб-сайте клиента, и, похоже, он не работает.
Когда я загружаю файл, он не загружается в папку с фотографиями и не добавляется в базу данных.
Страница для загрузки файлов находится по адресу www.sunkyog.com/admin/dd.php [образец страницы, которую я создал], страница PHP — www.sunkyog.com/admin/up.php, а папка для загрузки — www. sunkyog.com/photos.
Это мой код:
dd.php
<head>
<!-- 1 -->
<link href="css/dropzone.css" type="text/css" rel="stylesheet" />
<!-- 2 -->
<script src="../js/dropzone.js"></script></head>
<body>
<form action="http://sunkyog.com/admin/up.php" enctype="multipart/form-data" class="dropzone" id="photoUploadDropzone"></form>
<script type="text/javascript">
Dropzone.options.photoUploadDropzone = {
paramName: "file",
maxFilesize: 5, // MB
maxFiles: 10,
addRemoveLinks: true,
acceptedFiles: "image/jpeg, image/jpg, image/png, image/gif",
accept: function(file, done) {
done();
}
};
</script>
</body>
</html>
up.php
if (!empty($_FILES)) {
$tempFile = $_FILES['file']['tmp_name'];
$targetPath = "photos/";
$targetFile = $targetPath. $_FILES['file']['name'];
move_uploaded_file($tempFile,$targetFile);
mysql_query("INSERT INTO club_photos VALUES('','photos/$tempFile','$fk_id')");
}
?>
Вы можете перейти на страницу http://www.sunkyog.com/admin/dd.php попробовать для себя, а затем после загрузки перейдите к http://www.sunkyog.com/photos/yourFileName чтобы увидеть, если он загружен.
<script src="dropzone.js"></script>
<script type="text/javascript">
Dropzone.autoDiscover = false;
var myDropzone = new Dropzone("#form_id");
myDropzone.options.addRemoveLinks=true;
myDropzone.options.uploadMultiple=false;
myDropzone.options.autoProcessQueue=false;
myDropzone.options.url='system_message_process.php';
myDropzone.options.maxFiles=1;
myDropzone.options.acceptedFiles='image/*';
function submit(){
myDropzone.processQueue();
myDropzone.on("success", function(file,responsenew) {
// alert(responsenew);
var response = jQuery.parseJSON(responsenew);
});
}
</script>
Пожалуйста, проверьте его для отправки вручную или установите для autodiscover значение true, а для processQueue — значение true и проверьте еще раз, отправленный или не отправленный запрос firebug. это работает нормально для меня
Других решений пока нет …