23. Xác thực upload thành công (Validation successful upload) (ok)

https://viblo.asia/p/tap-16-request-laravel-aWj534Y8K6m

Ngoài việc xác định file có tồn tại không, bạn có thể xác thực có lỗi gì trong quá trình upload hay không thông qua method isValid, nếu không có vấn đề gì, sẽ trả về true.

if ($request->file('avatar')->isValid()) {
    //
}

Ngoài ra để xem lỗi của file trong quá trình upload, bạn có thể dùng method getErrorMessage từ Illuminate\Http\UploadedFile.

$request->file('avatar')->getMessageError();

Lưu ý: Mình có test hàm này, nhưng dù không có lỗi nó vẫn trả về một chuỗi với nội dung "The file "image.jpg" was not uploaded due to an unknown error.". Vì vậy, dù có gặp lỗi này cũng không quá lo lắng. Nếu không chắc, bạn có thể xem method getErrorMessage tại đây. Trong đó có liệt kê các lỗi mà Laravel có thể khai báo, đồng thời bạn cũng có thể sẽ hiểu lý do vì sao upload thành công như nó vẫn trả về một câu thông báo lỗi.

Nếu muốn chính xác trong quá trình xác thực, bạn nên sử dụng method getError để trả về mã lỗi trong quá trình upload, nếu trả về 0 thì không có lỗi.

Last updated