亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

PHP制作驗(yàn)證碼

2020-03-22 20:24:53
字體:
供稿:網(wǎng)友
  • html' target='_blank'>PHP制作驗(yàn)證碼詳細(xì)教程

    效果:

    myvcode.class.php:封裝創(chuàng)建驗(yàn)證碼的類

       1: <?php
       2: /*
       3: * file:myvcode.class.php
       4: * 驗(yàn)證碼類,類名Vcode
       5: */
       6: class Vcode
       7: {
       8:     private $width;              /*驗(yàn)證碼寬度*/
       9:     private $height;             /*驗(yàn)證碼高度*/
      10:     private $codeNum;            /*驗(yàn)證碼字符個(gè)數(shù)*/
      11:     private $checkCode;            /*驗(yàn)證碼字符*/
      12:     private $image;                /*驗(yàn)證碼資源*/
      13:     private $pixNum;            /*繪制干擾點(diǎn)的個(gè)數(shù)*/
      14:     private $lineNum;            /*繪制干擾線的條數(shù)*/
      15:
      16:     /*
      17:     *構(gòu)造方法實(shí)例化驗(yàn)證碼對(duì)象,并初始化數(shù)據(jù)
      18:     *@param int $width         設(shè)置默認(rèn)寬度
      19:     *@param int $height     設(shè)置默認(rèn)高度
      20:     *@param int $codeNum    設(shè)置驗(yàn)證碼中的字符個(gè)數(shù)
      21:     *@param int $pixNum        設(shè)置干擾點(diǎn)的個(gè)數(shù)
      22:     *@param int $lineNum    設(shè)置干擾線的數(shù)量
      23:     */
      24:     function __construct($width=80,$height=40,$codeNum=4,$pixNum=40,$lineNum=5)
      25:     {
      26:         $this->width = $width;
      27:         $this->height = $height;
      28:         $this->codeNum = $codeNum;
      29:         $this->pixNum = $pixNum;
      30:         $this->lineNum = $lineNum;
      31:     }
      32:     /*內(nèi)部私有方法,創(chuàng)建圖像資源*/
      33:     private function getCreateImage()
      34:     {
      35:         $this->image = imagecreatetruecolor($this->width, $this->height);
      36:         $white = imagecolorallocate($this->image,0xff,0xff,0xff);
      37:         imagefill($this->image, 0, 0, $white);
      38:         $black = imagecolorallocate($this->image,0,0,0);
      39:         imagerectangle($this->image, 0, 0, $this->width-1, $this->height-1, $black);
      40:     }
      41:     /*內(nèi)部私有方法,繪制字符,去掉o0Llz和012*/
      42:     private function createCheckCode()
      43:     {
      44:         $code = '3456789abcdefghijkmnpqrstuvwxyABCDEFGHIJKMNPQRSTUVWXY';
      45:         $this->checkCode = "";
      46:         for($i=0; $i<$this->codeNum;$i++)
      47:         {
      48:             $char = $code{rand(0,strlen($code) - 1)};
      49:             $this->checkCode .= $char;
      50:             $fontColor = imagecolorallocate($this->image, rand(0,128), rand(0,128),rand(0,128));
      51:             $fontSize = rand(3,5);
      52:             $x = rand(0,$this->width-imagefontwidth($fontSize));
      53:             $y = rand(0,$this->height-imagefontheight($fontSize));
      54:             imagechar($this->image, $fontSize, $x, $y, $char, $fontColor);
      55:         }
      56:     }
      57:     /*內(nèi)部私有方法設(shè)置干擾元素*/
      58:     private function setDisturbColor()
      59:     {
      60:         /*繪制干擾點(diǎn)*/
      61:         for($i=0; $i<$this->pixNum; $i++)
      62:         {
      63:             $color = imagecolorallocate($this->image, rand(0,255), rand(0,255), rand(0,255));
      64:             imagesetpixel($this->image, rand(1,$this->width-2), rand(1,$this->height-2), $color);
      65:         }
      66:         /*繪制干擾線*/
      67:         for($i=0; $i<$this->lineNum; $i++)
      68:         {
      69:             $color = imagecolorallocate($this->image, rand(0,255), rand(0,255), rand(0,255));

    70: imageline($this->image, rand(1,$this->width / 2), rand(1,$this->height / 2),

    rand($this->width / 2,$this->width – 2), rand($this->height / 2,$this->height – 2), $color);

      71:         }
      72:     }
      73:     /*開啟session保存 利用echo 輸出圖像*/
      74:     function __toString()
      75:     {
      76:         $_SESSION['code'] = strtoupper($this->checkCode);
      77:         $this->getCreateImage();
      78:         $this->createCheckCode();
      79:         $this->setDisturbColor();
      80:         $this->outputImg();
      81:     }
      82:     /*內(nèi)部私有方法輸出圖像*/
      83:     private function outputImg()
      84:     {
      85:         header("content-type:image/png");
      86:         imagepng($this->image);
      87:     }
      88:     /*析構(gòu)方法,釋放對(duì)象*/
      89:     function __destruct()
      90:     {
      91:         imagedestroy($this->image);
      92:     }
      93: }
      94: ?>

    imgcode.php輸出圖像

       1: <?php
       2: session_start();
       3: require_once('myvcode.class.php');
       4: echo new Vcode();
       5: ?>

    test.html:同過img標(biāo)簽引用

       1: <img src="imgcode.php">
    可以加一個(gè)a標(biāo)簽,用js實(shí)現(xiàn)換一張效果:

    /*局部刷新?lián)Q驗(yàn)證碼*/function changeCode(){	var imgcode = document.getElementById('code');	var change = document.getElementById('change');	change.onclick = function()	{		/*必須加后面的參數(shù)才能刷新*/		imgcode.src='code.php?tm'+Math.random();	}}

    code和change分別是img和a的id

    PHP編程

    鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

  • 發(fā)表評(píng)論 共有條評(píng)論
    用戶名: 密碼:
    驗(yàn)證碼: 匿名發(fā)表
    中文字幕一区二区三区av| 亚洲成人影院少妇| 日韩一区二区三区高清在线观看| 91最新在线| 亚洲在线免费视频| 欧美激情一区二区三区免费观看| 亚洲一区影音先锋| 国产丝袜在线播放| 亚洲一卡二卡在线| 香蕉视频在线观看网站| 日韩精品导航| 国产精品一二| 特级西西人体www高清大胆| 国产乱码精品一区二区三区亚洲人| 精品国内自产拍在线视频| 国产传媒免费在线观看| 欧美风情第一页| 亚洲美女av在线播放| av激情久久| 国产av人人夜夜澡人人爽麻豆| 24小时免费看片在线观看| 精品综合久久久久久97| 香港日本三级视频| 亚洲黄色一区二区三区| theporn国产在线精品| av在线之家电影网站| 99精品99久久久久久宅男| 亚洲天堂2021av| 99热在线观看免费| 蜜桃视频网站在线观看| 欧美24videosex性欧美| 一区二区三区四区在线看| 国产精品久久久久91| 久久天堂av综合合色蜜桃网| 超碰免费在线97| 久久蜜臀中文字幕| 久久久久亚洲综合| 国产成人8x视频一区二区| 0608新视觉| 国产激情一区二区三区桃花岛亚洲| 久久视频在线免费观看| www亚洲色图| 国产二区三区四区| 性欧美长视频免费观看不卡| 欧美日韩在线视频观看| 亚洲国产综合91精品麻豆| а√天堂中文在线资源8| 日韩午夜三级在线| 女人高潮被爽到呻吟在线观看| 亚洲大胆人体大胆做受1| 污视频在线免费观看| 丝袜脚交一区二区| 一二三四视频在线社区中文字幕2| 国产大片中文字幕在线观看| 国语对白永久免费| 欧美一区二区三区另类| 欧美日韩在线不卡视频| 在线观看日韩精品| y111111国产精品久久婷婷| 亚洲精品国产综合区久久久久久久| 亚洲一级黄色录像| 成 人片 黄 色 大 片| av一区二区在线看| 久久久久久久久久久黄色| 国产探花一区在线观看| 1pon在线| 自拍在线播放| 禁网站在线观看免费视频| 91人成在线| 亚洲欧洲精品成人久久奇米网| 男男h黄动漫啪啪无遮挡软件| 波多野结衣中文字幕在线播放| 欧美日韩国产丝袜另类| 国内精品久久久久久久97牛牛| 91精品国产色综合久久不卡98| 国产精品伊人久久| 亚洲精品电影久久久| 日本a一级在线免费播放| 米奇精品一区二区三区| 99re这里只有精品在线| 九九久久精品这里久久网| 黄色一区二区三区四区| 成人激情黄色网| 欧美一区二区中文字幕| 一区二区三区在线观看免费视频| 色狠狠久久av五月综合|| 精品国产自在久精品国产| 99视频这里有精品| 午夜精品视频网站| 欧美手机在线| 91高跟黑色丝袜呻吟在线观看| 九九爱精品视频| 亚洲国产精华液| 国产二区视频在线| 国产午夜免费福利| 欧美精品一区视频| 国产成人禁片在线观看| 欧美精品久久久久久久小说| 日本色综合中文字幕| 色综合久久久久综合体| 国产伦精品一区二区免费| 日本高清视频在线| 午夜精品久久久久久久久久久久| 国产69精品久久久| 亚洲AV成人无码一二三区在线| 精品无人区太爽高潮在线播放| 免费在线观看日韩av| 日韩乱码人妻无码中文字幕| 亚洲网站免费观看| 中文字幕在线视频一区二区| 国产日产欧美一区| 污视频网站入口| 中文字幕伦理免费在线视频| 成人男女网免费| 国产成人av无码精品| 97人妻精品一区二区三区软件| 免费福利在线视频| 精品国产乱码久久久久久丨区2区| 日韩一级片免费观看| 欧美成人bangbros| 国产一区高清| 87福利电影网| 欧美视频完全免费看| 男女猛烈激情xx00免费视频| 日韩一区二区三区xxxx| 成人在线高清免费| 大胆日韩av| 国产高清精品一区| 免费高清视频在线观看| 在线视频国产一区| 成人国内精品久久久久一区| av 日韩 人妻 黑人 综合 无码| 欧美88888| 欧美gay1069大粗吊| 大地资源二中文在线影视观看| 男女爱爱网站| 国产又粗又猛又黄视频| 久久av导航| 天海翼中文字幕| 中文字幕第38页| 免费看av在线| 国产日产精品一区二区三区的介绍| 秋霞一区二区三区| 日本不卡123| 精品卡1卡2卡三卡免费网站| 天堂av2020| 可以免费看毛片的网站| 亚洲国内高清视频| 欧美自拍偷拍网| 欧美肥婆姓交大片| 亚洲美女中文字幕| 欧美日韩伦理片| 精品国产1区2区3区| 欧美性受xxxx黑人xyx| 午夜久久一区| 国内精品久久久久久影院8f| 国产二级一片内射视频播放| 国产精品流白浆视频| 日韩欧美美女一区二区三区| 中文字幕亚洲乱码熟女1区2区| 黄视频在线免费| 91网页在线观看| 三级亚洲高清视频| 国产成人亚洲精品乱码在线观看| 999www人成免费视频| 九九九九九九精品任你躁| 天天做天天爱夜夜爽| 日韩电影免费网站| a毛片毛片av永久免费| 欧美精品一区二区三区中文字幕| 亚洲aⅴ男人的天堂在线观看| 天天操夜夜操av| 搡女人真爽免费午夜网站| 亚洲一区二区三区乱码aⅴ| 国产精品福利视频一区二区三区| 欧美性色黄大片人与善| 福利视频一区二区| 亚洲精品国产91| av黄色一级| 午夜成人免费电影| 五月婷婷激情综合| 一区二区在线免费观看| 国产高清精品一区| 国产亚洲高清一区| 羞羞网站在线看| 97成人精品视频在线观看| 日韩在线免费看| 侵犯稚嫩小箩莉h文系列小说| 在线一区二区三区做爰视频网站| 国产福利一区二区| www.亚洲资源| av片在线免费看| 欧美成人全部免费| av色影在线看免费| 天天摸天天做天天爽水多| 五月婷婷六月丁香激情| 日韩亚洲欧美在线观看| 欧美一区二区性放荡片| 久久夜色精品国产| 九九九九九国产| 欧美a在线视频| 欧美午夜电影在线播放| 精品精品视频| 在线观看视频中文字幕| 日韩av综合网| 少妇性l交大片7724com| 欧美激情亚洲激情| 羞羞的视频在线观看| 久久综合色视频| 国产午夜精品一区二区理论影院| www.日韩大片| 99久热re在线精品996热视频| 国产二级一片内射视频播放| 免费在线观看亚洲视频| 午夜成人鲁丝片午夜精品| 91麻豆精品国产91久久久久久久久| 欧美精品粉嫩高潮一区二区| 国产浪潮av性色av小说| 亚洲精品国产suv| 91麻豆精品国产91久久久久| 亚洲欧洲高清| 一区二区三区区四区播放视频在线观看| 久久国产精品视频在线观看| 男人网站在线观看| 日韩成人动漫| 国产精品九九九九九| 欧美hdxxxx| 91小视频网站| 最近中文字幕一区二区三区| 日本xxxxxxxxx18| 久久久无码精品亚洲日韩按摩| 欧美日韩亚洲一区二区三区在线观看| 九九九九九伊人| 成人av中文| 国产精品剧情一区二区三区| www.国产二区| 蜜桃av鲁一鲁一鲁一鲁俄罗斯的| 日韩黄色三级在线观看| 极品尤物av久久免费看| 欧美亚州一区二区三区| 韩漫成人漫画| 欧美自拍偷拍网| 日韩一级片在线观看| 欧美日韩亚洲一区二区三区四区| 国产免费自拍视频| 极品白浆推特女神在线观看| 国产美女视频一区二区二三区| 免费麻豆国产一区二区三区四区| 好吊一区二区三区| 精品人妻人人做人人爽夜夜爽| 久久久亚洲欧洲日产国码aⅴ| 国产永久免费高清在线观看| 亚洲综合久久网| 亚洲国产午夜| 性欧美videos粗暴| 免费国产麻豆传| 欧美性猛交xxxx乱| 你懂的在线视频| 国产精品久久久久一区二区三区| 久久国产精品露脸对白| av在线国产精品| 亚洲精品国产一区二区精华液| 久久激五月天综合精品| 国产99久久九九精品无码| 色综合激情久久| 日本熟妇一区二区三区| 免费毛片小视频| 免费看污污网站| 久久网这里都是精品| 香蕉av在线播放| 一区二区三区在线|网站| 国产成人三级一区二区在线观看一| 国产成人高清激情视频在线观看| 精品日韩av一区二区| 日本一区高清不卡| 亚洲免费视频网站| 2020国产精品久久精品美国| 久久99久久久久久| 久久国产露脸精品国产| 精品国产无码在线观看| 日本视频一二三区中文字幕| av亚洲男人天堂| 色老太综合网| 88xx成人精品| 精品久久久久久久久久久久久| 亚洲免费激情视频| 日本欧美黄色| 日本一区美女| 春色成人在线视频| eeuss影院www在线观看| 男女午夜视频在线观看| 亚洲第一伊人| 日韩av综合网| 宅男午夜在线| 亚洲日本久久| 日本黄色三级网站| 国产精品久久久久一区| 亚洲国产欧美在线成人app| 国产成人a级片| 午夜伦理在线| 日本精品黄色| 销魂美女一区二区三区视频在线| 中文字幕在线观看免费高清| 91传媒在线免费观看| 日韩和欧美一区二区三区| 久久夜靖品2区| 国产女主播av| 午夜精品一区二区三区视频| 99re久久最新地址获取| 亚洲欧洲免费无码| 欧美精品一区在线播放| 亚洲欧美国产精品久久久久久久| 国产精品黄页免费高清在线观看| 日韩在线视频免费播放| 中文字幕中文字幕一区| sm久久捆绑调教精品一区| 欧美a∨亚洲欧美亚洲| 91精品国产综合久久精品麻豆| 国产黄色小视频在线| 免费观看30秒视频久久| 亚洲插插视频| 波多野结衣午夜| 女同一区二区三区| 久久av一区二区三区亚洲| 国产又粗又黄又爽的视频| 精品国产一区二区三区日日嗨| 夜色激情一区二区| 97精品资源在线观看|