功能说明
生成图片验证码,并使用 cookie 记录。
部署说明
使用演示(在入口页面开启 session,说明见代码注释)
<?php class indexController extends grace{ public function index(){ //提交比对 if(PG_POST){ //比对验证码 if($_POST['yzm'] != getSession('pgVcode')){ echo '验证码错误'; }else{ echo '验证码正确'; } } } //绘制验证码 public function vcode(){ /* * verifyCode 参数 * 1、图片宽度 * 2、图片高度 * 3、字符总数 * 4、包含数字的数量 * 5、字体【可省参数 默认:AMBROSIA.ttf,如需更换请将字体文件部署到 phpGrace/fonts 文件夹下】 */ $vcode = new phpGrace\tools\verifyCode(88, 32, 4, 1); /* * 可修改属性 $vcode->bgcolor = array(255, 0, 0); //验证码背景颜色 $vcode->codeColor = array(0, 255, 0); //验证码文本颜色 $vcode->fontSize = 30; //验证码文字大小 $vcode->noise = false; //是否绘制干扰字符 $vcode->noiseNumber = 10; //干扰字符数量 $vcode->sessionName = 'yourname'; //保存验证码的 session 名称 */ //绘制验证码 $vcode->draw(); } } 利用视图展示验证码,提交 POST 数据 <html> <head> <title></title> </head> <body> <form action="" method="post"> 验证码 : <br /> <input type="text" name="yzm" /><img src="/index/vcode" onclick="changeVcode(this);" /><br /> <input type="submit" id="" value="提交" /> </form> <script type="text/javascript"> //点击更换验证码 function changeVcode(vcodeImg){ vcodeImg.setAttribute('src', '/index/vcode/' + Math.random()); } </script> </body> </html>