前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP实现字母数字混合验证码功能

PHP实现字母数字混合验证码功能

作者头像
砸漏
发布2020-10-20 10:43:49
1.6K0
发布2020-10-20 10:43:49
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

一款简单的PHP实现字母数字混合验证码,支持自定义验证码、验证码图片、宽度、高度、个数、背景图片等

验证码调用地址:Application\Home\Controller\CodeController.class.php

代码语言:javascript
复制
 Vendor('Vcode.Vcode', '', '.class.php'); 
 $config = array("width" =  100, "height" =  36, "count" =  4, "str" =  2); //配置 
 $vcode = new \Vcode($config); 
 $vcode- getCode(); //获取验证码 
 $vcode- getImg(); //输出图片 
 exit;

验证码图片

代码语言:javascript
复制
 <img src="__APP__/code/" id="code" onclick="changeCode($('#code'))"/ 

JS通过后缀加随机数Math.random()来刷新验证码

代码语言:javascript
复制
 function changeCode(obj) { 
  obj.attr("src", '__APP__/code/?' + Math.random()); 
 }

检测验证码是否输入正确

代码语言:javascript
复制
 <input type="text" id="input_code" class="input"/  
 <input type="button" value="提交" class="btn" onclick="checkCode()"/ 
 function checkCode() { 
   $.post("__APP__/Code/check", {code: $("#input_code").val()}, function(data) { 
     if (data == '1') { 
       alert("验证码正确!"); 
     } else { 
       alert("验证码错误!"); 
     } 
   }, "json") 
 }

PHP验证传过来的参数code和当前session存储的验证码进行比较,若是正确返回1,错误则-1

代码语言:javascript
复制
 public function check() { 
     $code = I('post.code'); 
     if (strtolower($code) == $_SESSION["sucaihuo_code"]) { 
       echo "1"; 
     } else { 
       echo "-1"; 
     } 
 }
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
验证码
腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档