TP框架中自带了验证码类,位置:Think/verify.class.php
在LoginController控制器中创建生存验证码的方法
public function verifyImg(){ $config = array( //设置验证码配置参数 如果不写 就是默认 'imageH' => 40, // 验证码图片高度 'imageW' => 120, // 验证码图片宽度 'length' => 4, // 验证码位数 'fontttf' => '4.ttf', // 验证码字体,不设置随机获取 'fontSize' => 15, // 验证码字体大小(px) ); $obj = new \Think\Verify($config); //实例化一个验证码类 传入配置信息 $obj->entry(); //用ertry函数创建验证码 }
在LoginController控制器中判断验证码是否正确并且判断登陆是否成功
public function Login(){ if(IS_POST){ $obj = new \Think\Verify(); //实例化一个验证码类 if($obj->check(I('post.captcha','','trim'))){ //判断验证码 $data['mg_name'] = $_POST['admin_user']; $data['mg_pwd'] = I('post.admin_psd','',mysql_real_escape_string); $rows = M('manager')->where($data)->find(); if($rows){ $this->redirect('Manager/index'); }else{ $this->error('用户名或密码错误',U('login'),3); } }else{ $this->error('验证码错误',U('login'),3); } } $this->display(); }