php产生简单的验证码
来源:互联网 发布:mac安装apache php 编辑:程序博客网 时间:2024/05/17 09:03
必备条件:
php增加了gd库这个扩展。(gd库为php提供了一系列操作图片的方法)。
简要概括:
把用随机函数产生的数字作为验证码的值,把验证码放在服务器端的session中,通过与客户端输入值的比较来判断验证码是否正确。
首先,创建验证码:
<?php
//要把值赋给session首先要启动该服务组件
session_start();
//产生随机数字并赋给$nums,期中rand()函数是用来产生0到15的随机数,dechex()的作用是把rand()表示为16进制,这样就能出现a-f中的部分字母
for($i=0;$i<4;$i++){
$nums.=dechex(rand(0,15));
}
//把值赋给创建并把值赋给session
$_SESSION[image]=$nums;
//设置图片的大小尺寸
$img=imagecreatetruecolor(100,30);
//set color,设置背景色
$bg=imagecolorallocate($img,0,0,0);
//font color,设置前景色,既是字体的颜色
$fg=imagecolorallocate($img,255,255,255);
//font loacation,字体相对于图片的位置,以及字体的设置
imagestring($img,rand(1,6),rand(5,60),rand(3, 15),$nums,$fg);
//print the image,输出图片,交给用户端使用
header("Content-type:image/jpeg");
imagejpeg($img);
?>
通过上面的步骤产生了验证码的图片,可是怎么使用呢。
客户端的界面可以简单的是这样的:
<?php
session_start();//同样的是启动session组件
if($_POST[numbers]){//如果表单输入的值不为空
if($_SESSION[image]==$_POST[numbers]){//并且上一个php产生的随机数和客户端输入的值一样,打印出验证码正确
echo "验证码正确.";
}
else {
echo "验证码错误.";
}
}
?>
<form action='' method="post">
<img src="make.php" >//引入产生验证码的php文件
<input type="text" name="numbers">
<input type="submit" value="开始验证">
</form>
- php产生简单的验证码
- 简单验证码的产生
- 简单验证码的产生
- 简单验证码的产生
- 简单验证码的产生
- 验证码的产生
- 【php】php验证码的简单实现
- php验证码 SESSION值产生失败的问题
- java中四位验证码的产生(简单有趣)
- PHP验证码类,简单安全的PHP验证码
- PHP验证码类,简单安全的PHP验证码
- PHP验证码类,简单安全的PHP验证码
- PHP-随机产生密码(验证码)函数
- 利用PHP产生随机验证码
- 《PHP中产生验证码函数封装》
- php简单验证码
- php简单验证码
- php做的简单验证码
- sqlserver存储过程的参数传递注意事项
- 1094 Sorting It All Out//传递闭包+拓扑排序
- 编译libiconv
- 金山卫士2.2版的bug,在2.4版中还没解决
- Qt for Symbian系列 集合地
- php产生简单的验证码
- 说的比较通俗mux
- 《Qt for Symbian》翻译系列之一:扉页
- 学习笔记---------------AOP
- 视频转码技术及转码实现详解
- office2003精简版 office2003下载
- MYSQL MISC 1
- VS2008读写excel文件解决方法
- java.lang.Class 类学习