介绍
怎么在php中使用ci框架实现一个验证码功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
php代码:
& lt; ? php class Captcha_code { 宽度,var $=& # 39; 60 & # 39;; 全国矿工工会,var $=& # 39; 4 & # 39;; 高度,var $=& # 39; 20 & # 39;; ,var $ name=& # 39; randcode& # 39;; ,public function  __construct(参看=懊涝?“) ,{ 如果才能(参看美元!=啊? {才能 ,,foreach (conf 美元;as 关键=美元在美元值) ,,{ ,,,这美元→键=美元价值; ,,} ,,} ,} ,function 显示() ,{ 头才能(“内容类型:图像/gif"); ,/* *,才能初始化 ,*/时间=美元才能border 0;,//是否要边框,1要:0不要 美元才能请,=,$ this→num;,//验证码位的数=美元才能w $ this→宽度;,//图片宽度=美元才能h $ this→高度;,//图片高度 时间=美元才能fontsize 5,,//字体大小 alpha 美元;=,才能“abcdefghijkmnopqrstuvwxyz",,//验证码内容1:字母 时间=美元才能number “023456789“,//验证码内容2:数字 时间=美元才能randcode ““,//验证码字符串初始化 将srand才能((双)()* 1000000),,//初始化随机数种子 我美元才能=,ImageCreate (w美元,,h);,//创建验证图片 ,/* *,才能绘制基本框架 ,*/时间=美元才能bgcolor ImageColorAllocate (im美元,,255,,255,,255),,//设置背景颜色 ImageFill才能(im,美元,0,0,,我们美元);,//填充背景色 如果才能(边境) {才能 black 美元,,,=,ImageColorAllocate (im美元,,0,0,0),,//设置边框颜色 ,才能ImageRectangle (im美元,,0,0,,w1美元,美元的h,,黑色的美元);//绘制边框 ,,} ,/* *,才能逐位产生随机字符 ,*/,,(i=0美元;,i<美元;多美元;,我+ +)美元 ,,{,, ,,alpha_or_number 美元;=,mt_rand(0, 1);,//字母还是数字 ,,str 美元;=,alpha_or_number 美元;?,alpha 美元;:,美元数量; ,,which 美元;=,mt_rand (0,, strlen (str)美元1);,//取哪个字符 ,,code 美元;=,substr (str美元,,,,1),,//取字符 ,,j 美元;=,!小姐:美元?,4,:,j + 15美元;,//绘字符位置 color3 美元,,,=,ImageColorAllocate (im美元,mt_rand (0100), mt_rand (0100), mt_rand(0100));,//字符随即颜色 ,,ImageChar (im美元,美元字形大小,,j美元,,3,,代码,美元,美元color3);,//绘字符 ,,randcode 美元。=,代码;美元,//逐位加入验证码字符串 ,,} ,/* *,才能添加干扰 ,*/,,(i=0美元;,i<美元;5;,我+ +美元)//绘背景干扰线 ,,{,, color1 美元,,,=,ImageColorAllocate (im美元,mt_rand (0255), mt_rand (0255), mt_rand(0255));,//干扰线颜色 ,才能ImageArc (im美元,mt_rand (5 w美元),mt_rand(5美元h), mt_rand (20300), mt_rand(20200), 55岁,44岁,color1美元);,//干扰线 ,,},,, ,,(i=0美元;,i<美元;如何* 15美元;,我+ +美元)//绘背景干扰点 ,,{,, color2 美元,,,=,ImageColorAllocate (im美元,mt_rand (0255), mt_rand (0255), mt_rand(0255));,//干扰点颜色, ,,ImageSetPixel (im美元,mt_rand (0 w美元),,mt_rand (0, h)美元,美元color2);,//干扰点 ,,}//把才能验证码字符串写入会话//这个→美元才能会话→set_userdata(数组($ this→name=祝辞randcode美元)); 美元才能_SESSION [$ this→名称]=$ randcode;/*才能绘图结束*/Imagegif才能(im); ImageDestroy才能(im);/*才能绘图结束*/,} } ?在
调用php代码:
function verify_image (), { ,,,,,,,美元参看[& # 39;名字# 39;],=,& # 39;verify_code& # 39;,,//作为配置参数 ,,,,,,,这个→美元负载→库(& # 39;lib_captcha& # 39;,,参看美元); ,,,,,,,这个→美元lib_captcha→显示(); ,,,,,,,yzm_session 美元;=,$ this→会话→用户数据(& # 39;verify_code& # 39;); ,,,,,,,echo yzm_session美元; ,,,}
html代码:
& lt; dl> ,,,,,,,,,& lt; dt>验证码:& lt;/dt> ,,,,,,,,,& lt; dd> ,,,,,,,,,,,& lt; input 类型=皌ext", name=皏erify_text", id=皏erify_text",类=皔zma", value=啊氨? null null null null null null null null null null怎么在php中使用ci框架实现一个验证码功能