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 相关文章推荐
用函数读出数据表内容放入二维数组
Oct 09 PHP
用PHP函数解决SQL injection
Dec 09 PHP
PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)
Jul 15 PHP
使用dump函数,给php加断点测试
Jun 25 PHP
php生成图形验证码几种方法小结
Aug 15 PHP
PHP错误Cannot use object of type stdClass as array in错误的解决办法
Jun 12 PHP
PHP获取当前所在目录位置的方法
Nov 26 PHP
php保存任意网络图片到服务器的方法
Apr 14 PHP
ThinkPHP中图片按比例切割的代码实例
Mar 08 PHP
详解php命令注入攻击
Apr 06 PHP
ThinkPHP框架整合微信支付之JSAPI模式图文详解
Apr 09 PHP
PHP工厂模式、单例模式与注册树模式实例详解
Jun 03 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
Yii2组件之多图上传插件FileInput的详细使用教程
2016/06/20 PHP
php strftime函数获取日期时间(switch用法)
2018/05/16 PHP
编写可维护面向对象的JavaScript代码[翻译]
2011/02/12 Javascript
jQuery中fadeIn、fadeOut、fadeTo的使用方法(图片显示与隐藏)
2013/05/08 Javascript
用js的document.write输出的广告无阻塞加载的方法
2014/06/05 Javascript
jquery+CSS实现的多级竖向展开树形TRee菜单效果
2015/08/24 Javascript
基于JS实现省市联动效果代码分享
2016/06/06 Javascript
你不需要jQuery(三) 新AJAX方法fetch()
2016/06/14 Javascript
jQuery使用$获取对象后检查该对象是否存在的实现方法
2016/09/04 Javascript
vue的diff算法知识点总结
2018/03/29 Javascript
JS基于Location实现访问Url、重定向及刷新页面的方法分析
2018/12/03 Javascript
vue中 this.$set的用法详解
2019/09/06 Javascript
vue实现文字加密功能
2019/09/27 Javascript
微信小程序基于ColorUI构建皮皮虾短视频去水印组件
2020/11/04 Javascript
[45:38]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第一局
2016/03/02 DOTA
[01:31:02]TNC vs VG 2019国际邀请赛淘汰赛 胜者组赛BO3 第一场
2019/08/22 DOTA
精确查找PHP WEBSHELL木马的方法(1)
2011/04/12 Python
常用python数据类型转换函数总结
2014/03/11 Python
python实现巡检系统(solaris)示例
2014/04/02 Python
python字符串排序方法
2014/08/29 Python
详解Python的Django框架中manage命令的使用与扩展
2016/04/11 Python
Python基于socket实现简单的即时通讯功能示例
2018/01/16 Python
python实现m3u8格式转换为mp4视频格式
2018/02/28 Python
selenium 多窗口切换的实现(windows)
2020/01/18 Python
Python使用扩展库pywin32实现批量文档打印实例
2020/04/09 Python
Python基于locals返回作用域字典
2020/10/17 Python
一款利用html5和css3动画排列人物头像的实例演示
2014/12/05 HTML / CSS
中国领先的汽车保养服务平台:途虎养车
2019/10/18 全球购物
儿科护士自我鉴定
2013/10/14 职场文书
道路建设实施方案
2014/03/18 职场文书
门面房租房协议书
2014/08/20 职场文书
群众路线教育实践活动心得体会(教师)
2014/10/31 职场文书
大学感恩节活动总结
2015/05/05 职场文书
2016年学校党支部创先争优活动总结
2016/04/05 职场文书
2019森林防火宣传标语大全!
2019/07/03 职场文书
详细谈谈JavaScript中循环之间的差异
2021/08/23 Javascript