コード例 #1
0
 /**
  * Handle a login request to the application.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function postLogin(Request $request)
 {
     $this->validate($request, [$this->loginUsername() => 'required', 'password' => 'required'], [], ['email' => 'Email', 'password' => '密码', 'username' => '用户名']);
     // 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 && $this->hasTooManyLoginAttempts($request)) {
         return $this->sendLockoutResponse($request);
     }
     $credentials = $this->getCredentials($request);
     if (Auth::attempt($credentials, $request->has('remember'))) {
         User::where('email', $credentials['email'])->update(['login_at' => date('Y-m-d H:i:s')]);
         LoginLog::insertLog(Auth::user()->id, Auth::user()->email, Auth::user()->name, $request->ip(), true);
         return $this->handleUserWasAuthenticated($request, $throttles);
     }
     LoginLog::insertLog(null, $credentials['email'], '', $request->ip(), false);
     // 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) {
         $this->incrementLoginAttempts($request);
     }
     return redirect($this->loginPath())->withInput($request->only($this->loginUsername(), 'remember'))->withErrors([$this->loginUsername() => $this->getFailedLoginMessage()]);
 }
コード例 #2
0
 public function getLoginlog()
 {
     $pages = LoginLog::orderBy('created_at', 'desc')->paginate(15);
     return view('log.loginlog')->withPages($pages);
 }