在 yii 中,我正在创建登录功能。当用户输入正确的用户名但密码错误时,我想在数据库中为这个正确的用户名创建 serach,并希望将该用户名的 id 放入 loginattempt 表并向他显示错误的密码消息。所以可以请人帮助我。
问问题
569 次
1 回答
2
在 userIdentity.php 中将数据保存在表中。
public function authenticate() {
$user = User::model()->findByAttributes(array('username' => $this->username));
if ($user === null) {
$this->errorCode = self::ERROR_USERNAME_INVALID;
}
elseif($user->password !== crypt($this->password, $salt))
{ // save $user->id in attempt table here .
$this->errorCode = self::ERROR_PASSWORD_INVALID;
}else{
//set id
}
并在文件中,其中验证函数称为 setError。
$this->_identity = new UserIdentity($this->username, $this->password);
if (!$this->_identity->authenticate())
if ($this->_identity->errorCode === UserIdentity::ERROR_USERNAME_INVALID) {
$this->addError('password', 'Incorrect email Id');
}elseif($this->_identity->errorCode === UserIdentity::ERROR_PASSWORD_INVALID){
$this->addError('password', 'Incorrect Password');
}
于 2012-11-24T05:52:16.907 回答