2016-11-27 5 views
-1

最後の30分は、これについてのstackoverflowのすべての記事を読んでいます。解決策が見つかりません。 これは私のコードです:なぜlaravel Auth ::は動作しないのですか

public function PostLogIn(Request $request) 
    { 

     if (Auth::attempt(['email' => $request->email, 'password' => $request->password])) { 

       return redirect()->route('dashboard'); 
      } 
     $status = 'Incorrect details'; 
     return view('login')->with('status',$status); 

    } 

あなたが尋ねる前に、私はすべての60個の文字を受け入れることができ、登録してパスワード欄にハッシュにユーザーのパスワードを保存しています。私は電子メールとパスワードのフィールドにデフォルトの名前を持つ標準的なユーザーモデルを使用しています。 は、私はユーザモデルにこのを追加する必要があることをどこかで読ん:

public function getAuthPassword() { 
    return $this->UserEmail; 
} 

も動作しませんしようとしました。送信元が正しくデータを送信していますが、何らかの理由で認証が失敗します。私はまだコメントすることができ、これはあなたを助けるしない場合、私は削除いたし

+0

何 '$要求 - > email 'と' $ request-> password'には?彼らはあなたが望むものを持っていますか? –

+0

フォーム入力からのデータが含まれています。はい、$リクエストでdd()を実行しましたが、それは問題ありません。 – Michael

+0

'getAuthPassword'関数を削除してみてください。 –

答えて

0

は(:)答えた人のために、私は、1.5時間前にポストを作成編集したかったが、誤って削除、申し訳ありません)それ。

  1. $request->passwordは、DB内の1つのことを同じハッシュ値を生成する場合$request->email$request->password

  2. チェックのために何(電子メール)、dd($request->email);

  3. 同じことをもたらしていることを確認してください:

    if (Hash::check($request->password, $hashInDB)) { 
        // The passwords match... 
    } 
    
  4. 最後に(これは最初に実行する必要があります:P) $request->email上のメールを使用して、DBに保存されているものと同じである

PS:確かモデルでgetAuthPasswordについて、あなたはせずに試みをしようとすべきではない、それ

関連する問題