本文主要是介绍tthinkPHP 3.2.3版本图片验证码的问题解决方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
- 实例化Verify,生成验证码的方法
- public function vcode(){
- ob_clean();
- $Verify = new \Think\Verify();
- $Verify->fontSize = 14;
- $Verify->length = 4;
- $Verify->useNoise = false;
- $Verify->codeSet = '0123456789';
- $Verify->imageW = 100;
- $Verify->imageH = 34;
- $Verify->entry();
- }
- ajax验证,用在输入框触发onblur时
-
- public function checkAjaxVerify(){
- if(!IS_AJAX) $this->error('非法请求');
- $code = I('code');
- $verify = new \Think\Verify(array('reset'=>false));//加入array('reset'=>false)以便于后台再次验证
- if($verify->check($code)){
- echo 1;
- }else{
- echo 0;
- }
下面是提交表单后在控制器中的方法:
- public function dologin(){
- if(!IS_POST){
- E("页面不存在");
- }
- $code = I('post.logincode');
- dump($code);
- dump($_SESSION);
- $verify = new \Think\Verify();
- if(!$verify->check($code)){
- $this->error('验证码错误','',15);
- }
- $sdb = M('administrator');
- $username = $_POST['loginid'];
- $userpass = $_POST['loginpass'];
- $condition['aaccount'] = $username;
- $condition['apass'] = $userpass;
- $condition['arole'] = 1;
- $result = $sdb->field('id,arole')->where($condition)->find();
- if(!$result){
- $this->error('没有这个用户','',5);
- }else{
- $_SESSION['userid'] = $result['id'];
- $_SESSION['username'] = $username;
- $_SESSION['userpass'] = $userpass;
- $_SESSION['userrole'] = $result['arole'];
- $this->success('登录成功',U('Index/index'),15);
- }
- }
ob_clean这个函数的作用就是用来丢弃输出缓冲区中的内容,如果你的网站有许多生成的图片类文件,那么想要访问正确,就要经常清除缓冲区。
这篇关于tthinkPHP 3.2.3版本图片验证码的问题解决方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!