我正在使用内置Auth::attempt
功能的Laravels来尝试为我的网站创建登录脚本。但是,Auth::attempt
始终返回false。这个问题似乎与许多其他类似问题的问题类似,但他们收到的答案对我的问题没有帮助/适用。我正在YouTube上关注Phpacademy的教程,我的登录信息几乎是逐字的。 Laravel是否修改了Auth::attempt
现在的工作方式?任何帮助,将不胜感激。以下是我的AccountController.php中的登录功能
public function postLogin() {
$validator = Validator::make(Input::all(),
array(
'email' => 'required|email',
'password' => 'required'
)
);
if($validator->fails()) {
return Redirect::route('account-login')
->withErrors($validator)
->withInput();
}
else {
$auth = Auth::attempt(array(
'email' => Input::get('email'),
'password' => Input::get('password'),
'active' => 1
));
if($auth) {
Redirect::intended('/');
}
else {
return Redirect::route('account-login')
->with('global',"Email/password wrong");
}
}
return Redirect::route('account-login')
->with('global',"There was a problem signing you in.");
}
模型/ user.php的
<?php
use Illuminate\Auth\UserTrait;
use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableTrait;
use Illuminate\Auth\Reminders\RemindableInterface;
class User extends Eloquent implements UserInterface, RemindableInterface {
use UserTrait, RemindableTrait;
//fillable for the database
protected $fillable = array('email','password','first-name','last-name','username','city','state','password','password_temp','code','active');
/**
* The database table used by the model.
*
* @var string
*/
protected $table = 'users';
/**
* The attributes excluded from the model's JSON form.
*
* @var array
*/
protected $hidden = array('password', 'remember_token');
}
?>
答案 0 :(得分:0)
我不确定它是否会影响你,因为你似乎没有使用&#34;记住我&#34;功能,但Laravel在4.1.2版本中引入了以下安全功能 以下是对问题的解释/修复我们许多人在遵循phpacademy auth教程后运行以获得auth工作所需的。 希望它有所帮助。