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解决的一个栈的面试题
Jul 02 PHP
VB中的RasEnumConnections函数返回632错误解决方法
Jul 29 PHP
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
Aug 23 PHP
thinkphp特殊标签用法概述
Nov 24 PHP
浅析php创建者模式
Nov 25 PHP
php三元运算符知识汇总
Jul 02 PHP
thinkphp框架下实现登录、注册、找回密码功能
Apr 06 PHP
yii2.0实现创建简单widgets示例
Jul 18 PHP
使用Codeigniter重写insert的方法(推荐)
Mar 23 PHP
php smtp实现发送邮件功能
Jun 22 PHP
Thinkphp5行为使用方法汇总
Dec 21 PHP
PHP一个简单的无需刷新爬虫
Jan 05 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_Flame(Version:Progress)的原代码
2006/10/09 PHP
PHP中如何判断AJAX提交的数据
2012/02/05 PHP
PHP匿名函数和use子句用法实例
2016/03/16 PHP
php进行md5加密简单实例方法
2019/09/19 PHP
ExtJS4中使用mixins实现多继承示例
2013/12/03 Javascript
jquery自动填充勾选框即把勾选框打上true
2014/03/24 Javascript
Javascript核心读书有感之表达式和运算符
2015/02/11 Javascript
JavaScript判断DIV内容是否为空的方法
2016/01/29 Javascript
BootStrap selectpicker
2016/06/20 Javascript
基于JavaScript实现鼠标向下滑动加载div的代码
2016/08/31 Javascript
JS验证字符串功能
2017/02/22 Javascript
jquery获取select,option所有的value和text的实例
2017/03/06 Javascript
Vue 父子组件、组件间通信
2017/03/08 Javascript
node.js中express中间件body-parser的介绍与用法详解
2017/05/23 Javascript
jQuery图片查看插件Magnify开发详解
2017/12/25 jQuery
[13:40]TI3青蛙君全程回顾 DOTA2我们为梦想再战
2013/09/13 DOTA
python实现类似ftp传输文件的网络程序示例
2014/04/08 Python
Python3.x版本中新的字符串格式化方法
2015/04/24 Python
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
2015/05/02 Python
简单了解OpenCV是个什么东西
2017/11/10 Python
python实现日常记账本小程序
2018/03/10 Python
Flask 让jsonify返回的json串支持中文显示的方法
2018/03/26 Python
利用Pyhton中的requests包进行网页访问测试的方法
2018/12/26 Python
Python GUI编程完整示例
2019/04/04 Python
Ubuntu16.04安装python3.6.5步骤详解
2020/01/10 Python
浅谈matplotlib 绘制梯度下降求解过程
2020/07/12 Python
HTML5微信播放全屏问题的解决方法
2017/03/09 HTML / CSS
应届生保险求职信
2013/11/11 职场文书
监理资料员岗位职责
2014/01/03 职场文书
小学毕业感言150字
2014/02/05 职场文书
三八妇女节趣味活动方案
2014/08/23 职场文书
中华在我心中演讲稿
2014/09/13 职场文书
爱护公物主题班会
2015/08/17 职场文书
工程移交协议书
2016/03/24 职场文书
MYSQL 无法识别中文的永久解决方法
2021/06/03 MySQL
Android自定义ScrollView实现阻尼回弹
2022/04/01 Java/Android