Laravel 12 : Validate,Validator trong laravel

0
345

Validation là gì?

Khi làm việc với bất kì ngôn ngữ lập trình nào thì việc kiểm tra tính hợp lệ của các dữ liệu input là điều không thể thiếu, đặc biệt khi dữ liệu input đến từ phía người sử dụng thông qua các dạng form. Bài viết này sẽ giới thiệu cho bạn về giải pháp mà Laravel cung cấp cho bạn để thực hiện công việc kiểm tra dữ liệu đầu vào này.

VD:

ta có trang login sau:

trước khi tác động đến database chúng ta lên kiểm tra dữ liệu có hợp lệ hay không trước khi tính đến việc tác động đến database. và công việc này là của validate

cách sử dụng

Route

LoginController

Function postlogin————–

email,pass : là name của ô input;

required,email,min,max..vv : là các rằng buộc mà ô input chứa các name : email và pass phải tuân thủ.

giá trị ô input có name=email: không được để trống, phải là email;

giá trị ô input có name=pass:không được để trống,ít nhất 5 ký tự, nhiều nhất 15 ký tự

Kết quả:khi ta không điền dữ liệu vào ô input sau đó nhấn submit:

Còn tại sao nó hiển thị tiếng anh thì xuống dưới nhé!

Các rằng buộc

Rules Chú Thích
Required Không được để trống ô dữ liệu.
Boolean Chỉ cho phép nhập vào các giá trị 0,1,true,false,’0′,’1′ .
confirmed Kiểm tra 2 input có trùng nhau không, input sau bắt buộc phải có tiền tố _confirmation. VD: password,password_confirmation.
dimensions  -Giới hạn chiều rộng chiều cao của ảnh. VD: ‘avatar’ => ‘dimensions:min_width=100,min_height=200’- Các thông số khác: min_widthmax_widthmin_heightmax_heightwidthheightratio.
email -Dữ liệu nhập vào phải là email.
file -Dữ liệu nhập vào phải là file.
image -Dữ liệu nhập vào phải là file ảnh(jpeg, png, bmp, gif, or svg).
in:foo,bar,.. -Dữ liệu nhập vào phải nằm trong list.
integer -Dữ liệu nhập vào phải là số nguyên.
json -Dữ liệu nhập vào phải là json
max:value -Độ dài lớn nhất của dữ liệu nhập vào. VD: max:255.
min:value -Độ dài nhỏ nhất của dữ liệu nhập vào. VD: min:5.
mimetypes:text/pain,… -Kiểu dữ liệu của file phải nằm trong list.VD: ‘video’ => ‘mimetypes:video/avi,video/mpeg,video/quicktime’
numeric -Dữ liệu nhập vào pải là số.
unique:table -Dữ liệu nhập vào phải là duy nhất trong bảng.VD: ‘username’=>’unique:users’.

-Ngoài ra các bạn