大佬教程收集整理的这篇文章主要介绍了标准 4 位验证码的实现,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
话不多说,我们看看是怎样实现的。这个验证码的实现需要建两个PHP文件,一个index.PHP(展示),另一个vcode.PHP(验证码加工)。
先看index.PHP:
<html> <head> </head> <body> <form> 验证码:<input type="text" name="vcode"> <script type="text/javascript"> //生成一个四位数 var num1 = Math.round(R_896_11845@ath.random()*10000000+@R_772_6422@; var num = num1.toString().substr(0,4); document.write("<img name='c' src='vcode.PHP?code="+num+"'>");//验证码作为图片从vcode.PHP文件返回 function recode(){//看不清换一张验证码的实现函数 var num1 = Math.round(R_896_11845@ath.random()*10000000+@R_772_6422@; var num = num1.toString().substr(0,4); document.c.src = "vcode.PHP?code="+num; } </script> <a href="javascript:recode()" style="text-decoration:none;">看不清?换一张</a> </form> </body> </html>
再看vcode.PHP:
<?PHP header("Content-type:image/png");//用header()函数发送http头信息给浏览器,告诉输出的图片类型为png $im=imagecreate(60,20);//创建画布 imagefill($im,imagecolorallocate($im,200,200));//imageallocate()用于指定分配颜色,而imagefill()用于设置画布背景颜色 $code=$_GET['code'];//从index.PHP接收数字 for($i=0;$i<4;$i++){ $color=imagecolorallocate($im,rand(0,100),100)); imageString($im,rand(3,5),60*$i/4+rand(3,6),$code[$i],$color);//绘制文字 } for($j=0;$j<200;$j++){ imagesetpixel($im,60),20),255),255)));//绘制200个不规则像素点 } imagepng($im);//输出图像 imagedestroy($im);//销毁图像资源 ?>
运行以下,看效果:
不算复杂的4位验证码就是这样实现的。如果真要说有什么需要注意的地方,那么就是验证码实现过程中使得像素点均匀分布时的那一点小算术(如我上面的“60*$i/4+rand(3,6)”,这个可以自己灵活设计)。
以上是大佬教程为你收集整理的标准 4 位验证码的实现全部内容,希望文章能够帮你解决标准 4 位验证码的实现所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。