Home >Backend Development >PHP Tutorial >有谁帮忙把php的验证码代码修改一下。

有谁帮忙把php的验证码代码修改一下。

WBOY
WBOYOriginal
2016-06-06 20:47:05961browse

有谁帮忙把php的验证码代码修改一下。
验证码中的字和$_SESSION['code']中的值不一致!
谢谢了!

<code><?php class Imagecode{
private $width ;
private $height;
private $counts;
private $distrubcode;
private $fonturl;
private $session;
function __construct($width = 120,$height = 30,$counts = 5,$distrubcode="1235467890qwertyuipkjhgfdaszxcvbnm",$fonturl="./TektonPro-BoldCond.otf"){
$this->width=$width;
$this->height=$height;
$this->counts=$counts;
$this->distrubcode=$distrubcode;
$this->fonturl=$fonturl;
$this->session=$this->sessioncode();
session_start();
$_SESSION['code']=$this->session;
}
function imageout(){
$im=$this->createimagesource();
$this->setbackgroundcolor($im);
$this->set_code($im);
$this->setdistrubecode($im);
ImageGIF($im);
ImageDestroy($im); 
}
private function createimagesource(){
return imagecreate($this->width,$this->height);
}
private function setbackgroundcolor($im){
$bgcolor = ImageColorAllocate($im, rand(200,255),rand(200,255),rand(200,255));
imagefill($im,0,0,$bgcolor);
}
private function setdistrubecode($im){
$count_h=$this->height;
$cou=floor($count_h*2);
for($i=0;$iwidth);
$y=rand(0,$this->height);
$jiaodu=rand(0,360);
$fontsize=rand(8,15);
$fonturl=$this->fonturl;
$originalcode = $this->distrubcode;
$countdistrub = strlen($originalcode);
$dscode = $originalcode[rand(0,$countdistrub-1)];
$color = ImageColorAllocate($im, rand(40,140),rand(40,140),rand(40,140));
imagettftext($im,$fontsize,$jiaodu,$x,$y,$color,$fonturl,$dscode);
}
}
private function set_code($im){
$width=$this->width;
$counts=$this->counts;
$height=$this->height;
$scode=$this->session;
$y=floor($height/2)+floor($height/4);
$fontsize=rand(30,35);
$fonturl="./AdobeGothicStd-Bold.otf";
$counts=$this->counts;
for($i=0;$idistrubcode;
$countdistrub = strlen($originalcode);
$_dscode = "";
$counts=$this->counts;
for($j=0;$jimageout();
?>
</code>

有谁帮忙把php的验证码代码修改一下。

回复内容:

有谁帮忙把php的验证码代码修改一下。
验证码中的字和$_SESSION['code']中的值不一致!
谢谢了!

<code><?php class Imagecode{
private $width ;
private $height;
private $counts;
private $distrubcode;
private $fonturl;
private $session;
function __construct($width = 120,$height = 30,$counts = 5,$distrubcode="1235467890qwertyuipkjhgfdaszxcvbnm",$fonturl="./TektonPro-BoldCond.otf"){
$this->width=$width;
$this->height=$height;
$this->counts=$counts;
$this->distrubcode=$distrubcode;
$this->fonturl=$fonturl;
$this->session=$this->sessioncode();
session_start();
$_SESSION['code']=$this->session;
}
function imageout(){
$im=$this->createimagesource();
$this->setbackgroundcolor($im);
$this->set_code($im);
$this->setdistrubecode($im);
ImageGIF($im);
ImageDestroy($im); 
}
private function createimagesource(){
return imagecreate($this->width,$this->height);
}
private function setbackgroundcolor($im){
$bgcolor = ImageColorAllocate($im, rand(200,255),rand(200,255),rand(200,255));
imagefill($im,0,0,$bgcolor);
}
private function setdistrubecode($im){
$count_h=$this->height;
$cou=floor($count_h*2);
for($i=0;$iwidth);
$y=rand(0,$this->height);
$jiaodu=rand(0,360);
$fontsize=rand(8,15);
$fonturl=$this->fonturl;
$originalcode = $this->distrubcode;
$countdistrub = strlen($originalcode);
$dscode = $originalcode[rand(0,$countdistrub-1)];
$color = ImageColorAllocate($im, rand(40,140),rand(40,140),rand(40,140));
imagettftext($im,$fontsize,$jiaodu,$x,$y,$color,$fonturl,$dscode);
}
}
private function set_code($im){
$width=$this->width;
$counts=$this->counts;
$height=$this->height;
$scode=$this->session;
$y=floor($height/2)+floor($height/4);
$fontsize=rand(30,35);
$fonturl="./AdobeGothicStd-Bold.otf";
$counts=$this->counts;
for($i=0;$idistrubcode;
$countdistrub = strlen($originalcode);
$_dscode = "";
$counts=$this->counts;
for($j=0;$jimageout();
?>
</code>

有谁帮忙把php的验证码代码修改一下。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn