PHP验证码高洛峰细说PHP-创新互联

前端页面index.php

网站建设、做网站服务团队是一支充满着热情的团队,执着、敏锐、追求更好,是创新互联的标准与要求,同时竭诚为客户提供服务是我们的理念。创新互联把每个网站当做一个产品来开发,精雕细琢,追求一名工匠心中的细致,我们更用心!
';     }else{         echo '输入不对
';     } } ?> 用户名:
标题:
内容:
验证码:

生成验证码图片test.php

getCode();         //将验证码的图片输出         $vcode->outimg();//调用方法

验证码类 print.php

width        =   $width;                 $this->heigth       =   $height;                 $this->num          =   $num;                 $this->code        =   $this->createCode();         }         //获取字符的验证码         function getCode(){             return $this->code;         }                           //输出验证码图形         function outimg(){             //创建背景 颜色 大小 边框             $this->createBack();                        //画字 大小 字体颜色             $this->outString();             //干扰元素 点 线条             $this->setDisturb();             //输出图像             $this->printImg();         }         //创建背景         private function createBack(){             //创建资源             $this->img = p_w_picpathcreatetruecolor($this->width, $this->heigth);             //设置随机背景颜色             $bgcolor = p_w_picpathcolorallocate($this->img, rand(225, 255), rand(225, 255), rand(225, 255));             //填充背景色             p_w_picpathfill($this->img, 0, 0, $bgcolor);             //画矩形             $bordercolor = p_w_picpathcolorallocate($this->img, 0, 0, 0);             p_w_picpathrectangle($this->img, 0, 0, $this->width-1, $this->heigth-1, $bordercolor);         }         //画字         private function  outString(){                 for($i=0;$i<$this->num;$i++){                                         $color  =   p_w_picpathcolorallocate($this->img, rand(0, 128), rand(0, 128), rand(0, 128));                 $font = rand(3,5);                 $x = 3 + ($this->width/$this->num)*$i;                 $y = rand(1, 5);                 p_w_picpathstring($this->img, $font,$x, $y, $this->code{$i}, $color);                            }         }         //设置干扰元素         private function setDisturb(){                 //加上点数                 for($i=0;$i<100;$i++){                     $color  =   p_w_picpathcolorallocate($this->img, rand(0, 255), rand(0, 255), rand(0, 255));                     p_w_picpathsetpixel($this->img, rand(1, $this->width-2), rand(1, $this->heigth-2), $color);                 }                 //加上线条                 for($i=0;$i<10;$i++){                     $color  =   p_w_picpathcolorallocate($this->img, rand(0, 255), rand(0, 128), rand(0, 255));                     p_w_picpatharc($this->img, rand(-10, $this->width+10), rand(-10, $this->heigth+10), rand(30, 300), rand(30, 300), 55, 44, $color);                 }         }         //输出图像         private function printImg(){           //      header("Content-Type:p_w_picpath/jpeg");            //     p_w_picpathjpeg($this->img);            if(p_w_picpathtypes() & IMG_GIF){                   header("Content-Type:p_w_picpath/gif");                  p_w_picpathjpeg($this->img);            }elseif(p_w_picpathtypes() & IMG_JPEG){                   header("Content-Type:p_w_picpath/jpeg");                  p_w_picpathjpeg($this->img);            }elseif(p_w_picpathtypes() & IMG_JPG){                   header("Content-Type:p_w_picpath/jpg");                  p_w_picpathjpeg($this->img);            }elseif(p_w_picpathtypes() & IMG_PNG){                   header("Content-Type:p_w_picpath/png");                  p_w_picpathjpeg($this->img);            }         }         //生成验证码         private function  createCode(){             $codes = "23456789abcdefghijklmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ";             $code = "";             for($i=0;$i<$this->num;$i++){                 $code .=$codes{rand(0,strlen($codes)-1)};             }             return $code;         }                  //释放图像资源         function __destruct(){             p_w_picpathdestroy($this->img);         }              }

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


标题名称:PHP验证码高洛峰细说PHP-创新互联
新闻来源:http://scjbc.cn/article/djcgos.html

其他资讯