我在 Laravel 中有登錄表單,但在電子郵件和密碼字段上顯示錯誤時遇到問題。我制作了驗(yàn)證器,其中包含該錯誤消息,并將其放入會話中并在 GET /login 上重定向它。我需要有關(guān)如何從會話中讀取這些值并將它們作為參數(shù)返回到 Blade 中的幫助,然后能夠顯示電子郵件和密碼的這些錯誤消息。目前驗(yàn)證有效,但不顯示任何消息,僅重定向回登錄頁面。任何幫助表示贊賞。這是我的代碼。網(wǎng)頁.phpRoute::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'); }}
1 回答

慕的地8271018
TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個贊
你必須打電話->withErrors($validator->errors())
。這將返回正確的MessageBag
. 否則你將返回一個Validator
實(shí)例。之后您可以根據(jù)需要使用$errors
變量或標(biāo)簽。@error
@edit 插入inteded()
使用route()
或back()
.
- 1 回答
- 0 關(guān)注
- 176 瀏覽
添加回答
舉報(bào)
0/150
提交
取消