dropme
- dropme 发布了话题纯菜鸟问题,怎么做下载啊?
public function authenticate() { $tblUser = tblUser::model()->find('username=?', array($this->username)); if($tblUser === null) $this->errorCode = self::ERROR_USERNAME_INVALID; else if(md5($this->password) !== $tblUser->password) $this->errorCode = self::ERROR_PASSWORD_INVALID; else { //记录访问时间 $tblUser->time_visit = $_SERVER['REQUEST_TIME']; $tblUser->save(); //设置用户信息 $this->setState('codeOuter', $tblUser->code_outer); $this->setState('timeReg', $tblUser->time_reg); $this->errorCode = self::ERROR_NONE; } return !$this->errorCode; }
setState()方法没用的。当用户选择了自动登录以后,下次打开页面的时候,浏览器貌似是把保存的cookies直接发送给服务器。authenticate()方法就不执行了,你在这里记录登录时间就是白扯啊~~~
我现在就是在useridentity里的,authticate方法里做的,但是会漏掉哦,您自己试试看?
- dropme 回复了话题 FormModel的rules怎么写?
但是这样写的话,是不是一个AND的意思,就是既要是email格式,长度又要是10-20之间?
而我是想要一个OR的意思,就是 或者是email,或者是一个长度13位的纯数字。这个怎么弄?public function checkIsA($attribute,$params){ if($this->$attribute!=='A'){ $this->addError($attribute,'你的email不等于A');; } }
这里
if($this->$attribute!=='A'){}
,判断的时候,我就要自己写代码,判断这里是不是email或者数字。但是我不想自己写(不是因为我懒),我只是觉得,yii已经写好了,有判断email和数字的方法,我能不能通过一种方式去调用它呢? - dropme 回复了话题 layouts下的文件不能用model吗?
formsearch.php是模型类,就是model文件夹下的~