php – Laravel 5.2 redirect() – > back() – > wi
发布时间:2020-12-14 19:40:03 所属栏目:大数据 来源:网络整理
导读:I’m trying to apply a validation in my auth form. Everything works well,until I go into my return $this-sendFailedLoginResponse($request);,where the redirect()-back()-withErrors() isn’t storing the error in the MessageBag (making my $err
<!-- BEGIN LOGIN FORM --> <form class="login-form" action="{{ url('/login') }}" method="post"> {!! csrf_field() !!} <h3 class="form-title font-green">Iniciar sesión</h3> @if (count($errors) > 0) // Here is where i check and my $errors variable is empty @foreach ($errors->all() as $error) <div class="alert alert-danger"> <button class="close" data-close="alert"></button> <span>{{ $error }}</span> </div> @endforeach @endif <div class="form-group"> <!--ie8,ie9 does not support html5 placeholder,so we just show field title for that--> <label class="control-label visible-ie8 visible-ie9">Username</label> <input class="form-control form-control-solid placeholder-no-fix" type="text" autocomplete="on" placeholder="Usuario" name="email" value="{{ (isset($email) ? $email : '' ) }}" /> </div> <div class="form-group"> <label class="control-label visible-ie8 visible-ie9">Password</label> <input class="form-control form-control-solid placeholder-no-fix" type="password" autocomplete="off" placeholder="Contrase?a" name="password" /> </div> <div class="form-actions"> <button type="submit" class="btn green uppercase">Iniciar sesión</button> </div> </form> <!-- END LOGIN FORM -->
public function login(Request $request) { $this->validateLogin($request); // If the class is using the ThrottlesLogins trait,we can automatically throttle // the login attempts for this application. We'll key this by the username and // the IP address of the client making these requests into this application. $throttles = $this->isUsingThrottlesLoginsTrait(); if ($throttles && $lockedOut = $this->hasTooManyLoginAttempts($request)) { $this->fireLockoutEvent($request); return $this->sendLockoutResponse($request); } $credentials = $this->getCredentials($request); if (Auth::guard($this->getGuard())->attempt($credentials,$request->has('remember'))) { return $this->handleUserWasAuthenticated($request,$throttles); } // If the login attempt was unsuccessful we will increment the number of attempts // to login and redirect the user back to the login form. Of course,when this // user surpasses their maximum number of attempts they will get locked out. if ($throttles && ! $lockedOut) { $this->incrementLoginAttempts($request); } return $this->sendFailedLoginResponse($request); } /** * Validate the user login request. * * @param IlluminateHttpRequest $request * @return void */ protected function validateLogin(Request $request) { $this->validate($request,[ $this->loginUsername() => 'required','password' => 'required',]); } /** * Get the failed login response instance. * * @param IlluminateHttpRequest $request * @return IlluminateHttpResponse */ protected function sendFailedLoginResponse(Request $request) { return redirect()->back() ->withInput($request->only($this->loginUsername(),'remember')) ->withErrors([ $this->loginUsername() => $this->getFailedLoginMessage(),]); } /** * Get the failed login message. * * @return string */ protected function getFailedLoginMessage() { return Lang::has('auth.failed') ? Lang::get('auth.failed') : 'These credentials do not match our records.'; } 解决方法
你好你必须写如下redirect()
return redirect()->back()->with('status-keyword','error message'); 在前端,您可以使用该消息 @if (session('error')) <div class="alert alert-danger text-center msg" id="error"> <strong>{{ session('error') }}</strong> </div> @endif 我希望这对你有益.谢谢. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |