祝大家新年快乐!新年新气象!
一个验证码图片生成(刚写的,拿出来分享)
上一篇 /
下一篇 2007-10-21 15:15:16
/ 个人分类:GD
查看( 1689 ) /
评论( 17 )
流程:
tt5IF`eIN:j0
1.随机出一个4位的随机数存到sessioon中
3w+Y9oD
z)ix0
2.设置图片长和宽
xK1BKy0
3.创建图像
~P"Y%IMO5{8e~0
4.设置背景PHPChina 开源社区门户'M8T
`S
}ue y&m%Z
5.将随机数写入图片PHPChina 开源社区门户o? E,w$P:IxK
r
6.加入干扰素(在图片上随机打印N个 点)PHPChina 开源社区门户4rX,Oq \
s6xi
7.给图片家边框PHPChina 开源社区门户?*k.xlqr
8.输出图片
)DskL,]0
//之后就是把用户输入的验证码数字跟 $_SESSION['login_validate'] 变量做比较就ok了
j^*K"Zy7s;Q%Z0
[php]<?php
N-g0t!Y
m0GG(?N0
session_start();PHPChina 开源社区门户l5} Ww4HX
n/p
//设置随机数种子
$nf-G0Qu;rj"?0
srand((double)microtime()*1000000);
FmMq [L |0
//随机出4个数字PHPChina 开源社区门户;DW5TN'm{6U7`fz
9@mt-Du!B0
for($i=0;$i<4;$i++){
M x? DD5D0
$mun.= mt_rand(0,9);PHPChina 开源社区门户&x(i M3j@+mcSb+tY;]I
}
U$R4sM8YLlc0
!sX0Z0eo v(d
X0
$_SESSION['login_validate'] = $mun;PHPChina 开源社区门户UL z)k8f
PGhp
PHPChina 开源社区门户
VW7\}` j#y"x
D} R
$img_height=60; //先定义图片的长、宽
Q7m!N)k#piG0
$img_width=20;PHPChina 开源社区门户!hbz&Lv-?Zh4G
E#l/Q_9\X0
$img = imagecreate($img_height,$img_width);//创建图像
Uv6yZ+r0
ImageColorAllocate($img, 255,255,255);//设置图像背景PHPChina 开源社区门户0a(u"x5|2E"~|#J
3~+}2`
^*ah6I }0
$color_rand = ImageColorAllocate($img, mt_rand(0,100),mt_rand(0,100),mt_rand(0,100));
H1O
l:W3l.R0
imagestring($img, 5, 12, 2, $_SESSION['login_validate'],$color_rand); //验证数字嵌入图片
2W1C6p"v@t-~0
(x&m1ZK8d[_ W/@0
for($i=0;$i<100;$i++) //加入干扰象素