私はauth:attemptメソッドが常に私をfalse値に戻す問題に直面しています。laravel 5.2 Auth:attempは常にfalseを返します
マイDbのエントリは以下のとおりです。
- ユーザー名:管理者
- パスワード: $ 2Y $ 10 $ jXkNy3WC2wqu0jmaqOfDiOgDnBV89uyvJPcNSU8xOnmO3w9RjT53S
注:私はハッシュの出力をエコーした後、手動でパスワードを保存::作ります( 'admin')。
認証のためのコードは次のとおりです。
// create our user data for the authentication
$userdata = array(
'username' => Input::get('username'),
'password' => Input::get('password'),
'agencyactive' => 1
);
if (Auth::attempt($userdata))
{
echo 'SUCCESS!';exit;
}
else
{
echo "<br>Login error";exit;
}
それは常に版画 "ログインエラー"。トラブルシューティングのための
私はそれが適切なレコードを取得、SQLクエリを記録し、
驚くべきことにselect * from `agencies` where `username` = 'admin' and `agencyactive` = 1 limit 1
、私は以下のように比較を検証するとき、それは私が何が起こっているのか見当もつかない
if (\Hash::check('admin', '$2y$10$jXkNy3WC2wqu0jmaqOfDiOgDnBV89uyvJPcNSU8xOnmO3w9RjT53S'))
{
// The passwords match...
echo "MATCHES";
}
else
{
echo "NO Match";
}
にマッチし出力しますここで間違い???
のような特定のメソッドを実装する必要があるため、ことがわかったはい、私の認証設定は次のとおりです。 '「デフォルト」= > [ 'ガード' => 'ウェブ'、 のパスワード '=> 'ユーザー'、 ]、 '警備員'=> [ 'ウェブ'=> [ 'ドライバ'=> 'セッション'、 'provider' => 'users'、 ]、 'api' => [ 'driver' => 'token'、 'プロバイダ' => 'ユーザー'、 ]、 ]、 'プロバイダ' => [ 'ユーザー' => [ 'ドライバ' => '雄弁'、 'モデル' =>アプリケーション\代理店: :クラス、 ]、 ]、 ' – user7174455