首页 / PHP / PHP中验证码类及使用方法_PHP教程
PHP中验证码类及使用方法_PHP教程
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP中验证码类及使用方法_PHP教程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2674字,纯文字阅读大概需要4分钟。
内容图文
备注:将公共页面加入session_start();
session_start();
ini_set('display_errors', 'Off');
class CCheckCodeFile
{
//验证码位数 www.2cto.com
var $mCheckCodeNum = 4;
//产生的验证码
var $mCheckCode = '';
//验证码的图片
var $mCheckImage = '';
//干扰像素
var $mDisturbColor = '';
//验证码的图片宽度
var $mCheckImageWidth = '80';
//验证码的图片宽度
var $mCheckImageHeight = '20';
//输出头
function OutFileHeader()
{
header ("Content-type: image/png");
}
//产生验证码
function CreateCheckCode()
{
//$this->mCheckCode = strtoupper(substr(md5(rand()),0,$this->mCheckCodeNum));
$this->mCheckCode = strtoupper(substr(rand(0,9999999999),0,$this->mCheckCodeNum));
session_cache_expire(60);
session_start();
$_SESSION["code_str"] = $this->mCheckCode;
return $this->mCheckCode;
}
//产生验证码图片
function CreateImage()
{
$this->mCheckImage = @imagecreate ($this->mCheckImageWidth,$this->mCheckImageHeight);
imagecolorallocate ($this->mCheckImage, 255, 255, 255);
return $this->mCheckImage;
}
//设置图片的干扰像素
function SetDisturbColor()
{
for ($i=0;$i<=128;$i++)
{
$this->mDisturbColor = imagecolorallocate ($this->mCheckImage, rand(0,255), rand(0,255), rand(0,255));
imagesetpixel($this->mCheckImage,rand(1,100),rand(1,100),$this->mDisturbColor);
}
}
//设置验证码图片的大小\宽\高
function SetCheckImageWH($width,$height)
{
if($width==''||$height=='')return false;
$this->mCheckImageWidth = $width;
$this->mCheckImageHeight = $height;
return true;
}
//在验证码图片上逐个画上验证码
function WriteCheckCodeToImage()
{
for ($i=0;$i<=$this->mCheckCodeNum;$i++)
{
$bg_color = imagecolorallocate ($this->mCheckImage, rand(0,255), rand(0,255), rand(0,255));
$x = floor($this->mCheckImageWidth/$this->mCheckCodeNum)*$i;
$y = rand(0,$this->mCheckImageHeight-15);
imagechar ($this->mCheckImage, 5, $x, $y, $this->mCheckCode[$i], $bg_color);
}
}
//输出验证码图片
function OutCheckImage()
{
$this ->OutFileHeader();
$this ->CreateCheckCode();
$this ->CreateImage();
$this ->SetDisturbColor();
$this ->WriteCheckCodeToImage();
imagepng($this->mCheckImage);
imagedestroy($this->mCheckImage);
}
}
$c_check_code_image = new CCheckCodeFile();
//$c_check_code_image ->SetCheckImageWH(100,50);//设置显示验证码图片的尺寸
$c_check_code_image->OutCheckImage();
?>
使用方法:
验证是否正确
session_start();
if($_POST["number"] == $_SESSION["code_str"]){
// echo("验证码正确");
}else{
echo "
" . "请输入的验证码,请重新输入秒之后,将为您跳转到上一页";
}
摘自 http://itsafe.org/?p=384
http://www.bkjia.com/PHPjc/478478.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/478478.htmlTechArticle备注:将公共页面加入session_start(); ?php session_start(); ini_set(display_errors, Off); class CCheckCodeFile { //验证码位数 www.2cto.com var $mCheckCodeNum = 4; //产生...
内容总结
以上是互联网集市为您收集整理的PHP中验证码类及使用方法_PHP教程全部内容,希望文章能够帮你解决PHP中验证码类及使用方法_PHP教程所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。