Вызов функции-члена has () для строки в laravel - PullRequest
0 голосов
/ 20 мая 2019

Я работаю над аутентификацией пользователя.Когда пользователь указывает неверный адрес электронной почты или пароль, я хочу перенаправить его на login.blade.php с сообщением об ошибке флэш-памяти.

// Auth/LoginController:

public function login(Request $request)
{
    $user=User::where('email',$request->email)->first();

    if(!is_null($user))
    {
        if($user->status==1)
        {
            if(Auth::guard('web')->attempt(['email'=>$request->email,'password'=>$request->password],$request->remember))

                return redirect()->intended(route('index'));

            }

        }

        else
        {

            if(Auth::guard('web')->attempt(['email'=>$request->email,'password'=>$request->password],$request->remember))
            {
                if(Auth::check())
                {
                    Auth::logout();
                }
            $user->notify(new VerifyRegistration($user));
            session()->flash('success','A new confirmation mail has sent to you...Please check and confirm your email');
            return redirect('/');
            }
            else
            {
                session()->flash('errors','Password is incorrect!!');
                return redirect()->route('login');
            }
        }
    }
    else
    {

        session()->flash('errors','Email or Password is incorrect!!');
            return redirect('/login');
    }
}

Я использую laravel по умолчанию login.blade.php.

1 Ответ

1 голос
/ 20 мая 2019

Когда пользователь вводит неправильный пароль вместо установки флеш-сообщения сеанса, используйте указанный ниже код для перенаправления пользователя в другом состоянии.

return redirect()->route('login')->with('error','Invalid password.'); 

В шаблоне входа вы можете отображать ошибки типа

           @if (session('success'))
            <div class="alert alert-success">
              <p>{{ session('success') }}</p>
            </div>
            @endif

            @if (session('warning'))
                <div class="alert alert-warning">
                    <p>{{ session('warning') }}</p>
                </div>
            @endif

            @if (session('error'))
                <div class="alert alert-error">
                    <p>{{ session('error') }}</p>
                </div>
            @endif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...