79333523

Date: 2025-01-06 15:32:18
Score: 0.5
Natty:
Report link

After trying out several options (thaks to everyoe that helped!), my choice was usig a regular experssion:

protected function validator(array $data)
{
    $rules = [
        'first_name' => ['required', 'string', 'max:255'],
        'last_name' => ['required', 'string', 'max:255'],
        'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
        'password' => ['required', 'string', 'min:6', 'confirmed', 'regex:/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{6,}$/'],
        'password_confirmation' => ['required', 'same:password'],
        'accept' => ['accepted'],
    ];

    $messages = [
        'first_name.required' => 'The "First name" field is required',
        'last_name.required' => 'The "Last name" field is required',
        'email.required' => 'Please provide a valid email address',
        'email.email' => 'The email address you provided is not valid',
        'email.unique' => 'The email address you provided is already in use',
        'password.required' => 'A password is required',
        'password.min' => 'The password must have at least :min characters',
        'password.regex' => 'Include uppercase and lowercase letters, at least one number and one symbol (special character)',
        'accept.required' => 'You must accept the Terms & conditions of service'
    ];
    
    return Validator::make($data, $rules, $messages);
}
Reasons:
  • RegEx Blacklisted phrase (2.5): Please provide
  • Long answer (-1):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • High reputation (-1):
Posted by: Razvan Zamfir