介绍
利用php怎么实现一个图像验证码生成功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
<强>一、代码强>
指数. .php
& lt; !DOCTYPE html公众“-//W3C XHTML 1.0//DTD//EN"过渡;“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"比; & lt; html xmlns=癶ttp://www.w3.org/1999/xhtml"比; & lt; head> & lt;元http-equiv=癈ontent-Type"内容=皌ext/html;charset=utf-8"/比; & lt; title> js +阻止GD2函数制作无刷新验证码& lt;/title> & lt;链接rel=皊tylesheet"类型=拔谋?css"href=https://www.yisu.com/zixun/癱ss/style.css”rel="外部nofollow”> >头 身体<>填写用户注册信息<=>“javascript脚本语言 函数chkinput(形式) { 如果(form.username.value==") { 警报(“请输入用户名!”); form.username.focus (); 返回错误; } 如果(form.password.value==") { 警报(“请输入注册密码!”); form.password.focus (); 返回错误; } 如果(form.defPassword.value==") { 警报(“请输入确认密码!”); form.defPassword.focus (); 返回错误; } 如果(form.password.value.length <6) { alert('密码长度应大于6位! '); form.password.focus (); 返回错误; } 如果(form.password.value !=form.defPassword.value) { alert('密码与确认密码不同!”); form.password.focus (); 返回错误; } 如果(形式。电子邮件。值==" "){ 警报(“请输入电子邮件地址!”); 的形式。电子邮件。select (); 返回(假); } var i=形式。电子邮件。价值。“@”indexOf (); 如果(我<0){ 警报(“请输入正确的邮件地址!”); 的形式。电子邮件。select (); 返回(假); } 如果(形式。电话。值==" "){ 警报(“请输入电话号码!”); 的形式。电话。关注(); 返回(假); } var/t=^ ([0 - 9] | [/-]) + $/g; 如果(!t。测试(形式。电话。值)| |形式。电话。价值。长度> 18 | |形式。电话。价值。长度<7){ alert('电话格式输入有误!”); 的形式。电话。关注(); 返回(假); } 如果(form.address.value==") { 警报(“请输入联系地址!”); form.address.focus (); 返回错误; } 如果(form.validatorCode.value==") { 警报(“请输入验证码!”); form.validatorCode.focus (); 返回错误; } 如果(form.validatorCode.value !=form.defValidatorCode.value) { alert('验证码输入有误!”); form.validatorCode.focus (); 返回错误; } 返回true; }> 脚本 <表单名称=癴orm1”方法=皃ost”行动=" success.php "> & lt;及# 63;php 类TestCode{//创建类名为TestCode 私人美元宽度; 私人美元高度; 私人str美元; 私人美元即时通讯; 私人strColor美元; 函数__construct(宽度、高度美元){=$ $ this→宽度宽度;=$ $ this→高度高度; $ this→str=$ _GET[& # 39;代码# 39;]; $ this→createImage (); } 函数createImage () { $ this→im=imagecreate ($ this→宽度、$ this→高度);//创建画布 imagecolorallocate ($ this→im, 200200200);//为画布添加颜色 (我=0;i<美元;4美元我+ +){//循环输出四个数字 $ this→strColor=imagecolorallocate ($ this→im,兰德(0100),兰德(0100),兰特(0100)); imagestring ($ this→im,兰德(3、5),$ this→宽度/4 * $ i +兰德(5、10),兰德(2、5),$ this→str[我]美元,美元这→strColor); } (我=0;i<美元;200美元我+ +){//循环输出200个像素点 $ this→strColor=imagecolorallocate ($ this→im,兰德(0255),兰德(0255),兰特(0255)); imagesetpixel ($ this→im,兰德(0,美元这→宽度),兰德(0,美元这→高度),$ this→strColor); } } 函数显示(){//头(& # 39;内容类型:图像/png # 39;);//定义输出为图像类型 imagepng ($ this→im);//生成图像 imagedestroy ($ this→im);//销毁图像释放内存 } } 形象=new TestCode美元(80,20);//将类实例化为对象 美元形象→显示();//调用函数 ,# 63;比;, <强>二、运行结果强>
利用php怎么实现一个图像验证码生成功能