Search code examples
javascriptlaravellaravel-5xmlhttprequestdropzone.js

Dropzone.js - Laravel | 500 Internal Server Error


I want to upload my images with dropzone.js, I get images on server side, its ok. But When I want to try save, it gives 500 internal server error.

Dropzone.options.mDropzoneTwo = {
  paramName: "file", // The name that will be used to transfer the file
  maxFiles: 10,
  maxFilesize: 10, // MB
  url: 'images/save' ,
  method: 'POST',
  headers: {
    "X-CSRF-TOKEN": document.head.querySelector("[name=csrf-token]").content
   },
  uploadMultiple: true,
  accept: function(file, done) {
          done();
          },
  success: function () {
          console.log()
          }
        };

And here is my controller. I'm saving images to public/uploads folder.

 $realname = str_slug(pathinfo($request->file('file')->getClientOriginalName(), PATHINFO_FILENAME));
 $extension = $request->file('file')->getClientOriginalExtension();
 $new_name = $realname."-".time().".".$extension;
 $request->file('file')->move(public_path('uploads/'.str_slug($new_name)));
 $image = new Media();
 $image->image = str_slug($new_name);
 $image->image_path = "images/".str_slug($new_name);
 $image->image_alt_name = $realname;
 $image->save();

Solution

  • As per comments --

    It means your application is not getting file object on $request->file('file') this, you can get more info by printing $request and then you can check for file too weather its being sent from client script or not