一款简单的PHP实现字母数字混合验证码,支持自定义验证码、验证码图片、宽度、高度、个数、背景图片等php
验证码调用地址:Application\Home\Controller\CodeController.class.phphtml
Vendor('Vcode.Vcode', '', '.class.php'); $config = array("width" => 100, "height" => 36, "count" => 4, "str" => 2); //配置 $vcode = new \Vcode($config); $vcode->getCode(); //获取验证码 $vcode->getImg(); //输出图片 exit;
验证码图片json
<img src="__APP__/code/" id="code" onclick="changeCode($('#code'))"/>
JS经过后缀加随机数Math.random()来刷新验证码session
function changeCode(obj) { obj.attr("src", '__APP__/code/?' + Math.random()); }
检测验证码是否输入正确dom
<input type="text" id="input_code" class="input"/> <input type="button" value="提交" class="btn" οnclick="checkCode()"/> function checkCode() { $.post("__APP__/Code/check", {code: $("#input_code").val()}, function(data) { if (data == '1') { alert("验证码正确!"); } else { alert("验证码错误!"); } }, "json") }
PHP验证传过来的参数code和当前session存储的验证码进行比较,如果正确返回1,错误则-1post
public function check() { $code = I('post.code'); if (strtolower($code) == $_SESSION["sucaihuo_code"]) { echo "1"; } else { echo "-1"; } }
本文转自:https://www.sucaihuo.com/php/533.html 转载请注明出处!code