mercredi 26 octobre 2016

File Data is blank array in server side: Laravel 5.3

I am trying to post File using JQuery. Below is my code.

<script language="javascript">
    $(document).ready(function() {
        $('#frmUpdateProfile').on("submit", function(event) {
            event.stopPropagation(); // Stop stuff happening
            event.preventDefault(); // Totally stop stuff happening
            var data = {
                "FileName"      :   event.target.FileName.files,
                "_token"        :   "{!! csrf_token() !!}"
            };
            $.ajax({
                url:            '',
                method:         "POST",
                async:          true,
                data:           JSON.stringify(data),
                processData:    false,
                contentType:    "application/json; charset=utf-8",
                success: function (msg) {
                    SuccessCallback(msg);
                },
                error: function (jqXHR) {
                    ErrorCallback(jqXHR);
                }
            });
        });
    });
</script>

I tried processData: false,. While debugging in Js, you can check that image is coming in the data. Below is the screenshot.

enter image description here

But when I print the request data in Laravel, it show blank array.

Html form is here

<form method="POST" 
        action="http://localhost:1234/AS6-Code/public/UpdateProfile" 
        accept-charset="UTF-8" 
        enctype="multipart/form-data"  
        id="frmUpdateProfile">

    <input name="_token" type="hidden" value="26KWkWdNqe5iOFE8VRBf1dRnL5xKxwN25jg3tAFW">
    <input type="hidden" name="_token" value="26KWkWdNqe5iOFE8VRBf1dRnL5xKxwN25jg3tAFW">
    <input multiple="1" name="FileName" type="file">
    <input class="btn btn-info" type="submit" value="Update">
</form>

Am I doing something wrong?



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire