我在 Laravel 中有登录表单,但在电子邮件和密码字段上显示错误时遇到问题。我制作了验证器,其中包含该错误消息,并将其放入会话中并在 GET /login 上重定向它。我需要有关如何从会话中读取这些值并将它们作为参数返回到 Blade 中的帮助,然后能够显示电子邮件和密码的这些错误消息。目前验证有效,但不显示任何消息,仅重定向回登录页面。任何帮助表示赞赏。这是我的代码。
网页.php
Route::post('/login', 'Auth\LoginController@login')->name('login');
登录控制器
public function showLoginForm(Request $request)
{
$session = $request->session()->get('data');
return view('auth.login', compact('session'));
}
public function login(Request $request)
{
$rules = array(
'email' => 'required|email',
'password' => 'required|alphaNum|min:3'
);
$validator = Validator::make($request->all(), $rules);
if ($validator->fails()) {
$request->session()->put('data', $request->input());
return redirect()->intended('login')
->withErrors($validator)
->withInput($request->session()->put('data', $request->input()));
} else {
$userData = array(
'email' => $request->get('email'),
'password' => $request->get('password')
);
}
if (Auth::attempt($userData)) {
return redirect()->intended('dashboard');
} else {
redirect()->intended('login');
}
}
慕的地8271018