cms 中登录3次时才将验证码显示的实现策略:
1.control中 从$this->session->get('login_attempts'), 获取登录尝试次数;
2.使用$this->view->assign("login_attempts", $login_attempts); 将视图页面的变量重新复制,这样就实现了;
分析,cms 正对于session应该有操作函数, 然后对于在view中使用的变量,需要使用$this->view->assign ,而不是直接使用$this->assign 赋值变量 .
问题:邮件注册时点击获取验证码按钮没有动作效果,log看有报错,如下:
升级了wamp 环境后问题解决,但是点击注册后还报系统错误。
今天调试发现:
// $data['modelid'] = (!isset($data['modelid'])|| empty($data['modelid'])) ? $this->memberconfig['modelid'] : $data['modelid'];
$data['modelid'] = 6;
if(!isset($this->membermodel[$data['modelid']]))
$this->memberMsg(lang('m-reg-17'));
之后我修改了sql-mode,改成了sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 与李工的设置一直,但是很可惜没有效果:
问题分析,应该是在当前运行环境下没有办法读到数据表中的modelid值(应该是默认值),至于为什么会读不到,原因还没有找出。