Here is my validation rules:-
$validationCondition = array(
'fname' => 'required|min:2',
'lname' => 'required|min:2',
'email' => 'required|email|unique:users,email',
'isd' => 'required|unique:users,isd',
'mobile' => 'required',
'password' => 'required'
);
$validationMessages = array(
'fname.required' => 'Please provide first name',
'fname.min' => 'First name should be atleast 3 characters long',
'lname.required' => 'Please provide last name',
'lname.min' => 'Last name should be atleast 3 characters long',
'email.required' => 'Please provide email',
'email.email' => 'Please provide a valid email id',
'email.unique' => 'This email id has already been registered. Choose any other valid email id.',
'isd.required' => 'The city name should be atleast 3 characters long',
'mobile.required' => 'Please provide mobile number',
'password.required' => 'Please provide password'
);
In the users table, both the isd and mobile are to be checked to ensure whether the contact number is unique.
How can I check that? I know how to check uniqueness of a single field, but don't know how to check combined value as unique.
$validationCondition = array(
...
'isd' => 'required',
'mobile' => 'required|unique:users,mobile,NULL,id,isd,' . $request->isd,
...
);
The meaning of that unique
rule for mobile
will be: "value of mobile
must be unique among all existing users that have isd
of the same value that came in request".
$request
here is the instance of incoming request that you are validating (obviously).