您的位置:首页 > 编程语言 > PHP开发

thinkphp验证码

2016-01-19 11:55 656 查看
1.index控制器:

<?php
namespace Home\Controller;
use Think\Controller;
header("Content-Type:text/html;charset=utf8");
class IndexController extends Controller {
public function index(){
$this->display();
}
public function verify_c(){
$Verify = new \Think\Verify();//实例化Verify
$Verify->fontSize = 18;//验证码设置
$Verify->length   = 4;
$Verify->useNoise = true;
$Verify->codeSet = '0123456789abcdefg';
$Verify->imageW = 130;
$Verify->imageH = 50;
//$Verify->expire = 600;
$Verify->entry();//输出并保持session
}
public function success(){//提交表单处理
// 检查验证码
$verify = I('param.verify','');
if(!check_verify($verify)){
$this->error("亲,验证码输错了哦!",$this->site_url,3);

}else{
echo '成功';
}
}
}

2.html页面:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>验证码</title>
<script src="__PUBLIC__/js/jquery-1.8.2.min.js"></script>
<!--<script type="text/javascript" src='__PUBLIC__/js/jquery-1.7.2.min.js'></script>-->
</head>
<body>
<section>
<div class="in">
<form action="{:U('Home/Index/success')}">
<input type="text" name="verify" placeholder="验证码">
<img style="width:100px;height:50px; cursor: pointer;" title="点击刷新" src="{:U('Home/Index/verify_c',array())}">
<br/>
<input type="submit" value="提交">
</form>
</div>
</section>
</body>
<script>
// 验证码生成
var captcha_img = $('.in').find('img')
var verifyimg = captcha_img.attr("src");
captcha_img.attr('title', '点击刷新');
captcha_img.click(function(){
if( verifyimg.indexOf('?')>0){
$(this).attr("src", verifyimg+'&random='+Math.random());
}else{
$(this).attr("src", verifyimg.replace(/\?.*$/,'')+'?'+Math.random());
}
});
</script>
</html>


[b]3.common目录下的function.php校验验证码:[/b]

<?php
function check_verify($code,$id=''){//校验验证码输入是否正确
$verify=new \Think\Verify();
return $verify->check($code,$id);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: