最近、Laravel (PHP MVC フレームワーク) の学習を開始しましたが、Auth::attempt($credentials) を使用してユーザーを認証する際に多くの問題が発生しています。
コードスニペットを以下に示します。mySQL データベースには、次のキー => 値を持つレコードがあります: id=>1、username=>'admin'、password=>'admin'、created_at=>0000-00-00 00:00:00、updated_at =>0000-00-00 00:00:00
Validator はパスしますが、Auth:attempt は常に失敗します。
以下のコードと私の簡単な説明では不十分な場合は、お知らせください。:-)
Routes.php:
Route::get('login', 'AuthController@showLogin');
Route::post('login', 'AuthController@postLogin');
認証コントローラー:
public function showLogin(){
if(Auth::check()){
//Redirect to their home page
}
//Not logged in
return View::make('auth/login');
}
public function postLogin(){
$userData = array(
'username' => Input::get('username'),
'password' => Input::get('password')
);
$reqs = array(
'username' => 'Required',
'password' => 'Required'
);
$validator = Validator::make($userData, $reqs);
if($validator->passes() && Auth::attempt($userData)){
return Redirect::to('home');
}
return Redirect::to('login')->withInput(Input::except('password'));
}