Dropzone.js с laravel 5.4 - & gt; файлы, которые не отправляются в запросе [дубликат]

Сначала вам нужно выбрать библиотеку реализации для этого.

Java API для обработки JSON (JSR 353) предоставляет переносные API для анализа, генерации, преобразования и запроса JSON с использованием объектной модели и потоковой передачи API-интерфейсы.

Эталонная реализация находится здесь: https://jsonp.java.net/

Здесь вы можете найти список реализаций JSR 353:

Что такое API, который реализует JSR-353 (JSON)

И чтобы помочь вам решить ... Я тоже нашел эту статью:

http://blog.takipi.com/the-ultimate-json-library-json-simple-vs-gson-vs-jackson-vs-json/

Если вы идете на Джексона, вот хорошая статья о конверсии между JSON в / из Java с помощью Jackson: https://www.mkyong.com/java/how-to-convert-java-object- to-from-json-jackson /

Надеюсь, что это поможет!

4
задан Tim Hartmann 6 March 2014 в 10:06
поделиться

1 ответ

У меня также была та же проблема, но я решил ее. Вы можете проверить эту ссылку из dropzone -> https://github.com/enyo/dropzone/wiki/Combine-normal-form-with-Dropzone

Они дали что вы хотите, но есть некоторые вещи, которые нужно добавить в том, что они дали, так как не делают всю форму кликабельной и другие вещи. Код ниже отлично работает для меня

form.html

<form method="post" action="upload.php" class="dropzone" id="mydropzone" enctype='multipart/form-data'> //remember we gave an id mydropzone to the form         
    <label>Username:<input type="text" name="uname"/> </label>
    <label>Password:<input type="text" name="pass"/> </label>
    //this will the dropzone drag and drop section.
    //notice we have given it an id dropzonePreview.
    <div id="dropzonePreview"></div>
    <input type="button" id="sbmtbtn" value="submit"/>
    //we have given id sbmtbtn to the button   
</form>
<script>
    Dropzone.options.mydropzone = {
    //url does not has to be written 
    //if we have wrote action in the form 
    //tag but i have mentioned here just for convenience sake 
        url: 'upload.php', 
        addRemoveLinks: true,
        autoProcessQueue: false, // this is important as you dont want form to be submitted unless you have clicked the submit button
        autoDiscover: false,
        paramName: 'pic', // this is optional Like this one will get accessed in php by writing $_FILE['pic'] // if you dont specify it then bydefault it taked 'file' as paramName eg: $_FILE['file'] 
        previewsContainer: '#dropzonePreview', // we specify on which div id we must show the files
        clickable: false, // this tells that the dropzone will not be clickable . we have to do it because v dont want the whole form to be clickable 
        accept: function(file, done) {
            console.log("uploaded");
            done();
        },
        error: function(file, msg){
            alert(msg);
        },
        init: function() {
            var myDropzone = this;
            //now we will submit the form when the button is clicked
            $("#sbmtbtn").on('click',function(e) {
               e.preventDefault();
               myDropzone.processQueue(); // this will submit your form to the specified action path
              // after this, your whole form will get submitted with all the inputs + your files and the php code will remain as usual 
        //REMEMBER you DON'T have to call ajax or anything by yourself, dropzone will take care of that
            });      
        } // init end
    };
</script>

ПРИМЕЧАНИЕ: ВЫ НЕ ДОЛЖНЫ делать какие-либо причудливые вещи в файле php. Просто напишите, что вы обычно пишете на PHP для загрузки файлов и ввода.

Посмотрите, работает ли это для вас.

10
ответ дан Keyur K 27 August 2018 в 22:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: