这几天为学院的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之路