PHP生成验证代码-五个验证码

PHP生成验证代码-五个验证码
在过去,当验证码输出,使用的方法是,验证码字符串是用js前台生成,然后通过后台PHP输出验证码图像。这样,你不需要使用_session美元通过的认证码值,直接使用JS来比较,生成和输入的字符串是否相等的字符串。

本文通过实例演示了5个认证码,并介绍了生成验证码的功能,PHP生成验证码的原理:通过GD库生成一个带有验证码的图片,并在会话中存储认证码。
1、HTML

5代码HTML代码如下所示:
1。数字验证码
验证码uff1a

2,数字+文字验证码
验证码uff1a
三.中文验证码
验证码uff1a
4、模仿眉目传情的验证码
验证码uff1a
5。算术验证码
验证码uff1a
2、js验证
$(函数(){())
$(# getcode_num )(点击(功能){ / /数字验证
$(这)。Attr(src
});
$(# chk_num)。Click(function(){)
无功code_num = $(# code_num )瓦迩();
美元。后(chk_code。phpact =民
代码:code_num
},
函数(MSG){
如果(MSG = 1){
警报()正确的代码!;
{人}
警报()验证码错误!;
}
});
});
数字/字母验证

$(# getcode_char)。Click(function(){)
$(这)。Attr(src
});
$(# chk_char)。Click(function(){)
无功code_char = $(# code_char )瓦迩();
美元。后(chk_code phpact =字符。
代码:code_char
},
函数(MSG){
如果(MSG = 1){
警报()正确的代码!;
{人}
警报()验证码错误!;
}
});
});
中文验证码

$(# getcode_zh)。Click(function(){)
$(这)。Attr(src
});
$(# chk_zh)。Click(function(){)
无功code_zh =逃避($(# code_zh)。瓦迩()));
美元。后(chk_code。phpact = zh
代码:code_zh
},
函数(MSG){
如果(MSG = 1){
警报()正确的代码!;
{人}
警报()验证码错误!;
}
});
});

//ogle verification

$(# getcode_gg)。Click(function(){)
$(这)。Attr(src
});
$(# chk_gg)。Click(function(){)
无功code_gg = $(# code_gg )瓦迩();
美元。后(chk_code。phpact = GG
代码:code_gg
},
函数(MSG){
如果(MSG = 1){
警报()正确的代码!;
{人}
警报()验证码错误!;
}
});
});

算术/验证
$(# getcode_math)。Click(function(){)
$(这)。Attr(src
});
$(# chk_math)。Click(function(){)
无功code_math = $(# code_math )瓦迩();
美元。后(chk_code phpact =数学。
代码:code_math
},
函数(MSG){
如果(MSG = 1){
警报()正确的代码!;
{人}
警报()验证码错误!;
}
});
});
});
3,PHP生成验证码
session_start();
GetCode(4,60,20);
功能获得按键的ASCII码($num美元美元,W,H){
= $代码;
($ i = 0;$ i $;$;$ + +){
$ =兰德(0, 9);
}
4位验证码也可以直接由兰德(10009999)生成。
当用于验证时,将生成写入会话的验证代码。
_session美元{helloweba_num= $代码;
创建一个图片,定义颜色值
页眉(内容类型:图像);
$我=画面欣赏($ W $ H);
黑imagecolorallocate美元(合我,0, 0, 0);
灰色= imagecolorallocate美元(合我,200, 200, 200);
背景颜色= imagecolorallocate美元(合我,255, 255, 255);
填充背景
imagefill($ 0, 0,$我,灰色);
绘制框
Imagerectangle(合我,0, 0美元美元美元W-1,H-1,黑色);
随机绘制两条线,干扰
样式=数组(黑色,黑色,黑色,黑色,黑色,
灰色,灰色,灰色,灰色
);
设定画线的风格($ IM,$式);
$ Y1 =兰特(0,$ H);
$ Y2 =兰特(0,$ H);
$ Y3 =兰特(0,$ H);
$ Y4 =兰特(0,$ H);
imageline($ IM,0美元美元,Y1,Y3 W美元,img_color_styled);
imageline($ IM,0美元美元,Y2,Y4 W美元,img_color_styled);
在画布上随机生成大黑点,干扰;
($ i = 0;$ i < 80;$ + +){
imagesetpixel(合我,伦德(0,$ W),伦德(0,$ H),为黑色);
}
随机显示数字显示,水平间隔和定位字符随机生成。
思瑞克斯美元=兰特(3, 8);
($ i = 0;$ i $;$;$ + +){
$ strpos =兰特(1, 6);
imagestring($ IM,5美元美元,瑞克斯,strpos,substr($代码,我,1),为黑色);
思瑞克斯美元=兰特(8, 12);
}
imagepng(为我); / /输出。
销毁一图像($ IM); / /发布的图片共享内存
}
以上内容是php生成的图片验证代码-含完整内容的五个验证码,希望大家喜欢。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部