2016-10-22 16 views
1

私はlaravel 5.2で作業していますが、私はカスタマイズされた認証に問題があります。ユーザーはログオンしません。
ここでは、関数の私のコードを見つけることができます:認証::ログインの代わりにLaravel認証が機能しません

public function login(Request $request) 
{ 
    $this->validateLogin($request); 

    $email = $request->get('email'); 
    $user = User::where('email', $email)->first(); 

    if(! is_null($user)) 
    { 
     if (Auth::login($user)) 
     { 
      return redirect('/profile'); 
     } 
    } 
    else 
    { 
     $this->register($request); 
    } 
} 

を、私はまた、機能の試みを試してみましたが、確認したが、何も働いていなかった...
それは、ユーザーがログに記録されますしかし、URLにリダイレクトせずに、空白のページが表示されました。

答えて

1

あなたの第2の条件は

Auth::login($user) 

として決して真にはならない場合は、ユーザーがそのように基本的に

にログインしている場合でも、ヌルを返すことはありませんので、あなたが空白のページを見ている代わりに「/プロファイル」にリダイレクトされています
if (Auth::login($user)) 
    { 
     return redirect('/profile'); 
    } 

これは、あなたの場合に条件が満たされない場合です。ユーザーがログインしていると「/プロファイル」にリダイレクトされます場合は、試すことができ

この

public function login(Request $request) 
{ 
    $this->validateLogin($request); 

    $email = $request->get('email'); 
    $user = User::where('email', $email)->first(); 

    if(! is_null($user)) 
    { 
     Auth::login($user); 
     if (Auth::check()) 
     { 
      return redirect('/profile'); 
     } 
    } 
    else 
    { 
     $this->register($request); 
    } 
} 


Auth::check(); 

はtrueを返します。

関連する問題