随笔 - 62  文章 - 96  trackbacks - 0
<2007年7月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

常用链接

留言簿(7)

随笔分类(66)

随笔档案(62)

文章分类(31)

文章档案(32)

友情链接

最新随笔

积分与排名

  • 积分 - 233521
  • 排名 - 108

最新评论

阅读排行榜

评论排行榜

这几天为学院的Flash_Dv大赛做了一个投票系统。
为了尽量减少漏洞,我上网查了一下关于投票系统的漏洞问题。
从下面的文章中我才知道验证码的重要性:http://blog.csdn.net/fiso/archive/2004/11/23/192855.aspx
这是关于验证的一点介绍:
        目前,不少网站为了防止用户利用机器人自动注册、登录、灌水,都采用了验证码技术。所谓验证码,就是将一串随机产生的数字或符号,生成一幅图片,图片里加上一些干扰象素(防止OCR),由用户肉眼识别其中的验证码信息,输 入表单提交网站验证,验证成功后才能使用某项功能。

PHP代码实现:
<?php
//生成验证码图片
Header("Content-type: image/PNG"); 
srand((double)microtime()*1000000);
$authnum=rand(1000,9999);
setcookie("authnum",$authnum);//用cookie保存生成四位整数

$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);


//将四位整数验证码绘入图片
imagestring($im, 5, 10, 3, $authnum, $black);
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);
?>
posted on 2006-11-06 23:58 beyonlin 阅读(642) 评论(0)  编辑 收藏 引用 所属分类: php之路

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理