PHP的中问验证码


Posted in PHP onNovember 25, 2006
<?php 
Class code 
{ 
 var $width =160; //图片的宽 
 var $hight =40; //图片的高 
 var $image; 
 var $red =223; //图片的RGB颜色 
 var $green =225; //红 
 var $blue =227 ;//绿 
 var $pix =227 ;//蓝 
 var $pixcolor; //杂色颜色; 
 var $pixred = 242; //红 
 var $pixgreen = 168;//绿 
 var $pixblue = 162; //蓝 
 var $txt=null;//验证码文字 
 var $txtcode=null; 
 var $txtsub=null; 
 var $pixnum = 300; //杂点数量 
 var $i=0; 
 var $widthpx=0; 
 var $highty=0; 
 var $txtreg=50; 
 var $txtgreen=30; 
 function createimage()  //创建一张图并填色 
 { 
  $this->image = imagecreate($this->width,$this->hight); 
  $this->color = imagecolorallocate($this->image,$this->red,$this->green,$this->blue); 
  return imagefill($this->image,0,0,$this->color); 
 } 
 function createpix() //干扰因素 
 { 
  for($this->i=1;$this->i<$this->pixnum;$this->i++) 
  { 
    $this->widthpx = rand(0,$this->width); 
    $this->highty = rand(0,$this->hight); 
   $this->pixcolor = imagecolorallocate($this->image,$this->pixred,$this->pixgreen,$this->pixblue); 
     imagesetpixel($this->image,$this->widthpx,$this->highty,$this->pixcolor); 
  } 
 } 
  function gettxt() //创建验证码文字 
 { 
  $this->txt = array("我","爱","你","叶","就","慧","明","发","真","的","很","想","不","知","到","为","什","么","就","是","忘","不","了","你","也","许","上","辈","欠","钱"); 
  for($this->i=0;$this->i<6;$this->i++) 
  { 
   $this->sub = $this->txt[rand(0,29)]; 
   $this->txtcode.= $this->sub; 
  } 
  $this->txtcode = iconv("GB2312","UTF-8",$this->txtcode); 
  $_SESSION["code"] = $this->txtcode; //产生的验证ID 
 } 
 function createstring() //创建验证码图片 
 { 
  imagettftext($this->image,20,5,0,40,$this->pixcolor,"C:\WINDOWS\Fonts\simsun.ttc ",$this->txtcode); 
  header("content-type:image/png"); 
  return imagepng($this->image); 
     imagedestroy($this->image); 
 } 
 function getcodeimage()//获得验证码图片 
 { 
  $this->createimage(); 
  $this->gettxt(); 
  $this->createpix();   
  $this->createstring(); 
 } 
} 
?> 
<?php  
session_start();    
$text = new code; 
$text->createimage(); 
$text->gettxt(); 
$text->createpix(); 
$text->createstring(); 
?>
PHP 相关文章推荐
php 破解防盗链图片函数
Dec 09 PHP
php学习之运算符相关概念
Jun 09 PHP
PHP乱码问题,UTF-8乱码常见问题小结
Apr 09 PHP
解析php中反射的应用
Jun 18 PHP
彻底删除thinkphp3.1案例blog标签的方法
Dec 05 PHP
typecho插件编写教程(四):插件挂载
May 28 PHP
JavaScript与HTML结合的基本使用方法整理
Oct 12 PHP
Zend Framework教程之视图组件Zend_View用法详解
Mar 05 PHP
php 中的closure用法详解
Jun 12 PHP
Thinkphp5框架简单实现钩子(Hook)行为的方法示例
Sep 03 PHP
Yii框架参数配置文件params用法实例分析
Sep 11 PHP
php生成随机数/生成随机字符串的方法小结【5种方法】
May 27 PHP
mysql建立外键
Nov 25 #PHP
ADODB结合SMARTY使用~超级强
Nov 25 #PHP
ADODB类使用
Nov 25 #PHP
smarty静态实验表明,网络上是错的~呵呵
Nov 25 #PHP
PHP动态变静态原理
Nov 25 #PHP
smarty 原来也不过如此~~呵呵
Nov 25 #PHP
用PHP的ob_start();控制您的浏览器cache!
Nov 25 #PHP
You might like
PHP数据库操作面向对象的优点
2006/10/09 PHP
PHP学习之PHP表达式
2006/10/09 PHP
基于PHP实现的事件机制实例分析
2015/06/18 PHP
php从数据库读取数据,并以json格式返回数据的方法
2018/08/21 PHP
PHP中类与对象功能、用法实例解读
2020/03/27 PHP
JavaScript下申明对象的几种方法小结
2008/10/02 Javascript
基于jquery实现的省市区级联无ajax
2013/09/24 Javascript
jquery实现的导航固定效果
2014/04/28 Javascript
jquery-syntax动态语法着色示例代码
2014/05/14 Javascript
JavaScript中Number.MIN_VALUE属性的使用示例
2015/06/04 Javascript
jquery事件的ready()方法使用详解
2015/11/11 Javascript
Javascript中的几种继承方式对比分析
2016/03/22 Javascript
浅谈在js传递参数中含加号(+)的处理方式
2016/10/11 Javascript
jQuery实现的简单获取索引功能示例
2018/06/04 jQuery
浅谈layui 数据表格前后台传值的问题
2019/09/12 Javascript
通过实例了解Render Props回调地狱解决方案
2020/11/04 Javascript
[02:44]重置世界,颠覆未来——DOTA2 7.23版本震撼上线
2019/12/01 DOTA
python抓取豆瓣图片并自动保存示例学习
2014/01/10 Python
Python入门之后再看点什么好?
2018/03/05 Python
python3将视频流保存为本地视频文件
2018/06/20 Python
Django Python 获取请求头信息Content-Range的方法
2019/08/06 Python
Django认证系统user对象实现过程解析
2020/03/02 Python
python如何将两张图片生成为全景图片
2020/03/05 Python
Python导入数值型Excel数据并生成矩阵操作
2020/06/09 Python
Python: glob匹配文件的操作
2020/12/11 Python
pytorch 中forward 的用法与解释说明
2021/02/26 Python
纯HTML+CSS3制作导航菜单(附源码)
2013/04/24 HTML / CSS
世界上获奖最多的手机镜头:Olloclip
2018/03/03 全球购物
Alexandre Birman美国官网:亚历山大·伯曼
2019/10/30 全球购物
局域网标准
2016/09/10 面试题
初中数学教学反思
2014/01/16 职场文书
大学生职业生涯规划书参考模板
2014/03/05 职场文书
面试必备的求职信
2014/05/25 职场文书
2014购房个人委托书范本
2014/10/12 职场文书
微信小程序APP的生命周期及页面的生命周期
2022/04/19 Javascript
Typescript类型系统FLOW静态检查基本规范
2022/05/25 Javascript