PHP 生成图片验证码
php 生成图形验证码需要借助于 php gd 库与 session 来实例,这样由 gd 库生成图片给用户看,
再由用户输入验证提交给服务器与
session 中存储值进行验证。
windows 系统 GD 库开启
将
php.ini 文件找到 extension=php_gd2.dll 去掉前面的;就行了
linux 系统 GD 库开启
##检测 GD 库是否安装命令
php5 -m | grep -i gd
或者
php -i | grep -i --color gd
##如未安装 GD 库,则为服务器安装,方法如下
### 如果是源码安装,则加入参数
--with-gd
### 如果是 debian 系的 linux 系统,用 apt-get 安装,如下
apt-get install php5-gd
### 如果是 CentOS 系的系统,用 yum 安装,如下
yum install php-gd
### 如果是 suse 系的 linux 系统,用 yast 安装,如下
yast -i php5_gd
好了,
php GD 库己经好了下面我们来看 php 生成图形验证码图片实例
首先还是给大家先介绍一下验证码的简单概念吧!
1 、验证码介绍
验证码是将一串随机产生的数字或符号以图片的形式展现在页面上
,由用户肉眼识别其中的
验证码信息
,在进行提交操作的同时,需将图片上的字符同时提交,输入提交验证成功后才能
使用某项功能。如果提交的字符与服务器
session 保存的不同,则认为提交信息无效。为了避
免自动程序分析解析图片
,通常会在图片上随机生成一些干扰素或者将字符进行扭曲,增加自
动识别难度。用户提交后将用户输入的验证码与会话
sessi on 中保存的字符串进行比对, 达
到验证的效果。用户提交表单的时候
,接收表单的页面检查服务端产生的 sessi on 和客户端提
交的表单值是否一致
,不
一致则不读或写入数据库。会话
sessi on 允许在服务器上储存小部分用户信息;这类信息是临
时性的
,当用户离开网站时会被自动删除。
2、 PHP 实现过程
PHP 网页文件被当作一般 HTML 网页文件来处理, 并且在编辑时,可以用编辑 HTML 的常规
方法来编写。由于
PHP 在使用时消耗相当少的系统资源, 并且有着开放的源代码, 而且是免
费的
,如今 PHP 已经被更多的网站应用,下面是 PHP 实现验证码的过程:
(
1)生成随机数
定义用来显示在图片上的数字和字母;
循环随机抽取四位定义好的字母和数字;