您的位置:首页 > 编程语言 > PHP开发

php验证码 GD库生成验证码

2013-09-22 05:57 435 查看


为大家介绍一个php使用GD库生成验证码的例子,有需要的朋友,可以参考下。

通过GD生成PNG图片,并把$randval随机数字赋给$_SESSION['login_check_num'],在通过用户输入的$_POST进行比较,来判断是否正确。

注意:如果服务器未开启GD库支持,需要修改php.ini文件,使php支持GD库。

代码如下:

01
<?php
02
//调用生成验证码图片
03
//by http://www.jbxue.com[/code]
04
if
(
$_GET
[
"action"
]==
"verifycode"
)
05
{
06
rand_create();
07
}
08
//生成验证码图片
09
function
rand_create()
10
{
11
//通知浏览器将要输出PNG图片
12
Header(
"Content-type:
image/PNG"
);
13
//准备好随机数发生器种子
14
srand((double)microtime()*1000000);
15
//准备图片的相关参数
16
$im
=
imagecreate(62,20);
17
$black
=
ImageColorAllocate(
$im
,
0,0,0);
//RGB黑色标识符
18
$white
=
ImageColorAllocate(
$im
,
255,255,255);
//RGB白色标识符
19
$gray
=
ImageColorAllocate(
$im
,
200,200,200);
//RGB灰色标识符
20
//开始作图
21
imagefill(
$im
,0,0,
$gray
);
22
while
((
$randval
=rand()%100000)<10000);{
23
$_SESSION
[
"login_check_num"
]
=
$randval
;
24
//将四位整数验证码绘入图片
25
imagestring(
$im
,
5,10,3,
$randval
,
$black
);
26
}
27
//加入干扰象素
28
for
(
$i
=0;
$i
<200;
$i
++){
29
$randcolor
=
ImageColorallocate(
$im
,rand(0,255),rand(0,255),rand(0,255));
30
imagesetpixel(
$im
,
rand()%70 ,rand()%30 ,
$randcolor
);
31
}
32
//输出验证图片
33
ImagePNG(
$im
);
34
//销毁图像标识符
35
ImageDestroy(
$im
);
36
}
37
//检验验证码
38
function
rand_check()
39
{
40
if
(
$_POST
[
"reg_rand"
]
==
$_SESSION
[
"login_check_num"
]){
41
return
true;
42
}
43
else
{
44
exit
(
"验证码输入错误"
);
45
}
46
}
47
?>
您可能感兴趣的文章:

php图片验证码的例子

php彩色验证码的简单例子

php GD库生成验证码的实例

php生成验证码的例子

php 验证码类 php 验证码

php随机验证码 php生成随机验证码(图文)

一个比较稳定的php登陆系统验证码

用php生成带有雪花背景的验证码

php写的一个验证码

php生成动态图片验证码的一段代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: