2016-07-22 11 views
1

UserController関数でmy auth関数が常にfalseを返しています。私は資格情報を入力するとPHP Laravel authが正常に動作していません

public function postSignin(Request $request) 
{ 
    $userdata = array(
     'email'  => $request->input('email'), 
     'password' => $request->input('password') 
    ); 

    if (Auth::attempt($userdata)) 
    { 
     return redirect()->route('user.profile'); 
    } 
    else 
    { 
     return redirect()->back(); 
    } 
} 

、ここでは私の経路コード

Route::post('/signin', [ 
    'uses' => '[email protected]' , 'as' => 'user.signin' 
]); 

で、認証のif一部が動作していないし、他の条件によって指示されるように私は自分のページにリダイレクトしています...

+0

これに 'php artisan make:auth'を使いましたか? –

+0

これはユーザーの作成に関連している可能性があります。ユーザを作成するときに 'Hash :: make()'を使いましたか? – Michel

答えて

1

Auth::attempt()関数laravelを使用すると自動的に比較するパスワードがハッシュされるため、ユーザーのパスワードをプレーンテキストでデータベースに保存している可能性があります。 bcrypt()ヘルパー機能を使用してパスワードを正しくハッシュしていることを確認してください。私が考えることができる唯一の他の可能性はあなたが正しいパスワードまたはユーザー名を入れているかどうかです。 bcryptのの

例新しいユーザーを作成:

User::create([ 
    "username" => $username, 
    "password" => bcrypt($password); 
]); 

は、この情報がお役に立てば幸い!

+0

私はユーザを作成中にbcrypt関数を使用していますが、まだ動作していません。 – tobi

関連する問題