它返回false,我的输入是否不正确[未存储在DataBase中]在我的数据库] ...Auth :: attempt [Laravel]工作不正常,每次我尝试测试我的TestLogin函数时,它总是返回false
配置auth.phph正确的是[ '模型'=> '用户' & & '表'=> '用户']
请这里的任何帮助:)
公共职能TestLogin() {
$data = Input::All(); //Get Input with POST Request
$UNameOrEmail = $data['UnameOrEmail'];
$password = $data['Password'];
if(filter_var($UNameOrEmail, FILTER_VALIDATE_EMAIL)) { //Check if Input Is Email or else(then consider it as user name)
$validator = Validator::make( //Validation for Email
array(
'email' => $UNameOrEmail,
'password' => $password,
),
array(
'email' => 'required|email|exists:users,email',
'password' => 'required|min:8'
)
);
if ($validator->fails()) { //If Email Validation was wrong return validation message
$messages = $validator->messages();
return $messages;
}
else //else store Email&Password in Array
$user = array(
'email' => $UNameOrEmail,
'password' => Hash::make($password)
);
}
else {
$validator = Validator::make( //Check User Name Validation
array(
'user_name' => $UNameOrEmail,
'password' => $password,
),
array(
'password' => 'required|min:8',
'user_name' => 'required|alpha_dash|between:4,16'
)
);
if ($validator->fails()) { //If User Name Validation was wrong return validation message
$messages = $validator->messages();
return $messages;
} else
$user = array( //else store UserName&Password in Array
'user_name' => $UNameOrEmail,
'password' => Hash::make($password)
);
}
if (Auth::attempt($user)) { //Here's the Error
echo 'Successfully logged in';
}
else
{
echo 'Some thing go wrong'; //In any case it jum here :(
}
}
你能展示你的用户模型吗?特别是名为'getAuthIdentifier()'和'getAuthPassword()'的函数? – user3158900 2015-02-05 19:00:54
protected $ table ='users'; () public function getAuthIdentifier() { return $ this-> getKey(); } public function getAuthPassword() { return $ this-> password; } public function getReminderEmail() { return $ this-> email; } – 2015-02-05 20:21:38