亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

驗證碼顯示空白框

跟著老師的寫,代碼沒有報錯,但是顯示一個空白框,沒有驗證碼生成啊?有遇到的沒?

正在回答

2 回答

image.func.php

<?php
/*
?*?通過GD庫做驗證碼
?*?創建畫布
?*/
require_once?"string.func.php";
function?verifyImage($width=80,$height=30,$type=1,$length=4,$pixel=0,$arc=0,$line=0,$sess_name='verify'){
	$image=imagecreatetruecolor($width,$height);
	$white=imagecolorallocate($image,255,255,255);
	$black=imagecolorallocate($image,0,0,0);
	imagefilledrectangle($image,?1,?1,?$width-2,?$height-2,?$white);
	$randCol=imagecolorallocate($image,?mt_rand(0,100),?mt_rand(0,100),?mt_rand(0,100));
	$chars=buildRandomString($type,$length);
	$_SESSION[$sess_name]=$chars;
	$fontfiles=array("CAMPU_12.TTF","CountryBlueprint.ttf","Goffik-O.ttf","ParkAvenueBT.ttf","SIMYOU.TTF");
	for($i=0;$i<$length;$i++){
		$size=mt_rand(14,18);
		$angle=mt_rand(-15,15);
		$x=5+$i*$size;
		$y=mt_rand(20,26);
		$color=imagecolorallocate($image,mt_rand(50,90),mt_rand(80,200),mt_rand(90,180));
		$fontfile='../fonts/'.$fontfiles[mt_rand(0,count($fontfiles)-1)];
		$text=substr($chars,$i,1);
		imagettftext($image,?$size,?$angle,?$x,?$y,?$color,?$fontfile,?$text);
	}
	if($pixel){
		for($i=0;$i<$pixel;$i++){
			imagesetpixel($image,?mt_rand(0,$width-2),?mt_rand(0,$height-2),?$randCol);
		}
	}
	if($arc){
		for($i=0;$i<$arc;$i++){
			imagearc($image,?mt_rand(0,$width-2),?mt_rand(0,$height-2),?mt_rand(0,$width-2),?mt_rand(0,$height-2),?mt_rand(0,360),?mt_rand(0,360),?$randCol);
		}
	}
	if($line){
		for($i=0;$i<$line;$i++){
			imageline($image,?mt_rand(0,$width-2),?mt_rand(0,$height-2),?mt_rand(0,$width-2),?mt_rand(0,$height-2),?$randCol);
		}
	}
	header('content-type:image/gif');
	imagegif($image);
	imagedestroy($image);
}
verifyImage(100,50,2,5,50,2);
?>

string.func.php

<?php
	function?buildRandomString($type=3,$length=4){
		if($type==1){
			$chars=join("",range(0,9));
		}elseif?($type==2)?{
			$chars=join("",array_merge(range("a","z"),range("A","Z")));
		}elseif?($type==3)?{
			$chars=join("",array_merge(range("a","z"),range("A","Z"),range(0,9)));
		}
		if($length>strlen($chars)){
			exit("字符串長度不夠");
		}
		$chars=str_shuffle($chars);
		return?substr($chars,0,$length);
	}
?>

由于不知道你的代碼,所以不敢妄下定論,復制一下,我這個執行OK的

0 回復 有任何疑惑可以回復我~

在header("content-type:image/gif");前面加一句ob_clean(); 試試

2 回復 有任何疑惑可以回復我~
#1

山上的小蝦

還是空白= = 而且加這句是什么原理呢
2017-08-18 回復 有任何疑惑可以回復我~
#2

_Dying

成功解決問題,太感謝你了同學
2018-10-29 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
手把手教你實現電商網站后臺開發
  • 參與學習       117255    人
  • 解答問題       2101    個

手把手教你用PHP搭建電子商務平臺,由淺入深教你搭建電商系統

進入課程

驗證碼顯示空白框

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號