1
我想在登录后检查用户的密码。使用CakePHP登录时检查用户密码
最简单的方法是什么?
我有一个用户控制器,它具有登录和注销操作,然后我有应用程序控制器与Auth登录操作。
我想要做的是检查以下两件事情之一:如果密码在过去3个月内发生了变化,或者密码为空或者与用户名相同。
如果满足这三个条件中的任何一个,则会提示用户输入新密码。我将如何去实现这一目标?
我想在登录后检查用户的密码。使用CakePHP登录时检查用户密码
最简单的方法是什么?
我有一个用户控制器,它具有登录和注销操作,然后我有应用程序控制器与Auth登录操作。
我想要做的是检查以下两件事情之一:如果密码在过去3个月内发生了变化,或者密码为空或者与用户名相同。
如果满足这三个条件中的任何一个,则会提示用户输入新密码。我将如何去实现这一目标?
首先,您必须存储上次更改密码的日期。因此,用户表看起来像: ID,登录名,密码,pwd_date
其次,你AppController-> login()方法中,你将需要添加几行代码,这将是类似于
$user = $this->User->findById($this->Auth->getUser('id'));
if ($user['User']['pwd_date'] < strtotime('-3 months') || '' == trim($user['User']['password'])){
promptViewToShowMustResetPassword();
}
现在,至于检查用户名和密码是否相同,您需要在模型中为用户设置它作为自定义验证规则,并且不允许使用用户名作为密码。