PHP实现数字验证码的例子
2013-12-27 07:16
639 查看
在php中实现验证码还是很方便的,关键点在于掌握php gd库与session的用法。
纵观网上php 生成验证码的例子,无不是php gd库与session相结合,并利用php 生成随机数的方法来完成。
PHP验证码,可以分为很多种,包括
php 图片验证码,php 随机验证码,以及php 中文验证码等,根据不同的应用场合来使用不同的验证码。
这里分享一个php数字验证码,供大家参考。
1,数字验证码
2,authimg.php
纵观网上php 生成验证码的例子,无不是php gd库与session相结合,并利用php 生成随机数的方法来完成。
PHP验证码,可以分为很多种,包括
php 图片验证码,php 随机验证码,以及php 中文验证码等,根据不同的应用场合来使用不同的验证码。
这里分享一个php数字验证码,供大家参考。
1,数字验证码
<? /* *Filename:authpage.php */ session_start(); //srand((double)microtime()*1000000); $authnum=$_SESSION['authnum']; //验证用户输入是否和验证码一致 if(isset($_POST['authinput'])) { if(strcmp($_POST['authinput'],$_SESSION['authnum'])==0) echo"验证成功!"; else echo"验证失败!"; } //生成新的四位整数验证码 //while(($authnum=rand()%10000)<1000); ?> <formaction=test4.phpmethod=post> <table> 请输入验证码:<inputtype=textname=authinputstyle="width:80px"><br> <inputtype=submitname="验证"value="提交验证码"> <inputtype=hiddenname=authnumvalue=<?echo$authnum;?>> <imgsrc=authimg.php?authnum=<?echo$authnum;?>> </table> </form>
2,authimg.php
<?php //生成验证码图片 Header("Content-type:image/PNG"); srand((double)microtime()*1000000);//播下一个生成随机数字的种子,以方便下面随机数生成的使用 session_start();//将随机数存入session中 $_SESSION['authnum']=""; $im=imagecreate(62,20);//制定图片背景大小 $black=ImageColorAllocate($im,0,0,0);//设定三种颜色 $white=ImageColorAllocate($im,255,255,255); $gray=ImageColorAllocate($im,200,200,200); imagefill($im,0,0,$gray);//采用区域填充法,设定(0,0) while(($authnum=rand()%100000)<10000); //将四位整数验证码绘入图片 // www.jbxue.com $_SESSION['authnum']=$authnum; imagestring($im,5,10,3,$authnum,$black); //用col颜色将字符串s画到image所代表的图像的x,y座标处(图像的左上角为0,0)。 //如果font是1,2,3,4或5,则使用内置字体 for($i=0;$i<200;$i++)//加入干扰象素 { $randcolor=ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255)); imagesetpixel($im,rand()%70,rand()%30,$randcolor); } ImagePNG($im); ImageDestroy($im); ?>
相关文章推荐
- 一个PHP验证码类与实例
- PHP+AJAX无刷新返回天气预报
- 一个好用的PHP验证码类
- 入门级的PHP验证码
- paip.广告过滤系统 php 实现
- paip.广告过滤系统 php 实现
- 一个好用的PHP验证码类实例分享
- 浅谈PHP变量作用域以及地址引用问题
- 类似php的js数组的in_array函数自定义方法
- php date
- 使用PHP做网页采集实例过程总结
- mac下php扩展mcrypt无法安装问题
- php 异步执行
- Intellij Idea/Webstorm/Phpstorm
- Discuz! x3.1的插件/utility/convert/index.php代码执行漏洞
- DedeCMS 5.7 config.php 跨站脚本漏洞
- 开始学习PHP之初识数据库连接
- PHP覆盖率
- 整理收藏一份PHP高级工程师的笔试题(附答案)
- php session 和cookie