1

Laravel / Intervention / Dropzone.js を使用して、Ajax を使用して自分のサイトに画像をアップロードしています。私が抱えている問題は、アップロード時に一部の画像が「エラー: 500」を返すことです。問題はファイル サイズや寸法ではありません。私はその両方をテストしました。問題は Lightroom だと思います。アップロードに失敗する画像は、Lightroom で編集した画像です。これを引き起こしている画像(エンコード、ヘッダーの送信)に対して行うべきことはありますか。他のすべては正常に動作します。これは私のコードです。

if(Input::hasFile('file-upload')) {

            $file = Input::file('file-upload'); 

            $key = Input::get('_uuid');
            $img = Image::make($file[0]);

            $img = Image::make($file[0])->widen(500, function ($constraint) {
                $constraint->upsize();
            });

            $img = Image::make($file[0])->heighten(1080, function ($constraint) {
                $constraint->upsize();
            });


            $fileName = Uuid::generate();
            $extenstion = $file[0]->getClientOriginalExtension();
            $fileItself = $fileName . '.' . $extenstion;

            $path = "/uploads/" . $fileItself;

            $img->save(public_path($path));
        }

Dropzone.js オプション

Dropzone.options.newPostForm = {
    paramName: "file-upload",
    uploadMultiple: true,
    dictDefaultMessage: "",
    previewsContainer: ".dropzone-previews",
    clickable: "#file-upload",
    maxThumbnailFilesize: 20,
    maxFilesize: 30
}
4

1 に答える 1

0

参考になるかわかりませんが、私が行った方法は次のとおりです。

    $upload_success = Input::file('file')->move($destinationPath, $filename);


    if( $upload_success ) {
        return Response::json('success', 200);
    } else {
        return Response::json('error', 400);
    }
于 2015-04-09T20:46:51.570 に答える