错误的电子邮件/密码信息


wrong email / password message laravel 5

我在请求(Laravel请求验证)文件中使用以下代码

 public function rules()
{
    return [
        'email'=>'required|email',
        'password'=>'required'
    ];
}
public function messages()
{
    return [
        'email.required' => 'Please enter email ',
        'email.email' => 'Please enter valid email ',
        'password.required' => 'Enter your password.',
    ];
}

我想显示验证错误,如果登录凭据与用户表"错误的电子邮件/id或密码"不匹配,是否有可能在这里编写代码,或者我应该如何在我的控制器中编写代码。

你可以试试:

public function rules($data){
    $messages = [
        'email.required'        => 'Please enter email ',
        'email.exists'          => 'Email not registered',
        'email.email'           => 'Please enter valid email ',
        'password.required' => 'Enter your password.',
    ]; 
    $validator = Validator::make($data, [
        'email'             =>'required|email|exists:users',
        'password'      =>'required'
    ], $messages);
    return $validator;
}

and in controller:

$validator = $this->rules($request->all());
if($validator->fails()){
   return redirect()->back()->withErrors($validator)->withInput();   
}
else{
   if (Auth::attempt(['email' => $email, 'password' => $password])) {
     //login successful
   }
   else{
     return Redirect::back()
            ->withInput()
            ->withErrors([
                'password' => 'Incorrect password!'
            ]);
   }
}

基本代码-

if (Auth::attempt(['email' => $email, 'password' => $password])) {
        // Authentication passed...
        return redirect()->intended('dashboard');
    }

阅读更多关于它。https://laravel.com/docs/5.2/authentication用户身份验证