當前位置:首頁 » 編程語言 » php無法顯示驗證碼

php無法顯示驗證碼

發布時間: 2022-04-25 04:43:00

㈠ 用thinkphp導入驗證碼,為什麼顯示不出來求教

檢查一下你的入口文件和配置文件裡面有沒有設置字元集的輸出

驗證碼常見錯誤:
1. 字體文件的位置不對
2. 由於在生成驗證碼的時候,使用了header()函數,它有一個特點,它之前不能有任何的輸出,包括空格。解決辦法,從index.php開始查找,凡是被包含進來的文件都需要查找
3. 還需要注意一個的,就是你的文件編碼要確保是 utf-8的,而不是帶BOM頭的utf-8。

最後,建議你單獨配置一個域名,放在根目錄,有些功能放在子目錄不好用

㈡ PHP伺服器不能顯示驗證碼

首先從最簡單的入手:
如果你只是驗證碼的圖片是小紅叉.那麼指著小紅叉位置.右鍵"顯示圖片"即可.如果還不行請刷新頁面.

網站的驗證碼圖片一般是「.xbm」格式。Windows XP SP2/Windows 2003操作系統默認情況下不支持「.xbm」格式,造成驗證碼無法顯示。

方法一 手動修改注冊表:

開始 /運行 /填入「regedit 」 /展開[HKEY_LOCAL_MACHINE-SOFTWARE-Microsoft-Internet Explorer-Security],在右側窗口找到BlockXBM的Dword值(沒有請新建)並雙擊在彈出的編輯對話框中將其數值數據設為「0」,點擊「確定」。
然後在再你需要填入驗證碼的頁面(按F5)刷新一下,應該正常了.

方法二 自動修改注冊表:
打開記事本將下邊的內容寫在記事本上
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Internet Explorer\\Security]
"BlockXBM"=dword:00000000
保存成.reg文件(文件類型選擇全部),並雙擊導入,重啟計算機就行了。

如果你是瀏覽網上銀行導致用戶名和密碼輸入框都無法正常顯示,那麼是你IE設定了阻止ActiveX控制項的原因..一般出現這種情況時..先把IE的選項設為默認,然後刷新頁面,這時提醒你安裝ActiveX控制項的時候安裝即可

㈢ php網站後台驗證碼顯示不出來呢

一般是兩個問題,一、GD庫是否開啟。二、BOM頭的影響,沒有清除。

給你發一個清除BOM的文件,你在根目錄執行一下該文件就行了。


㈣ php驗證碼無法正常顯示 Image corrupt or truncated:

嘗試1.圖像路徑問題,改絕對路徑,或者在相同的路徑下放一張靜態圖,如果能顯示則排除。
嘗試2.圖像編碼,是否是生成時有問題,生成圖像的代碼,一行一行的調試。
嘗試3.關於這個頁面的某個類中<?php ?>結尾的標簽下面還有回車

㈤ php無法顯示驗證碼(確認已開啟GD,確認無BOM),還有什麼辦法

以前遇到過類似問題,是使用thinkphp自帶的,解決方法是:
//生成驗證碼
public function verifyimg(){
import("ORG.Util.Image");
ob_end_clean();
Image::buildImageVerify();
}
輸出前加入 「ob_end_clean();」 清掉緩沖區的內容,可以試試。

㈥ php做的驗證碼顯示不出來

<?php
header('Content-Type: image/png');
$width=80; //驗證碼的寬度
$height=30; //驗證碼的高度
$num=4; //驗證碼的個數
$fontSize=16; //驗證碼字體大小
$code=''; //接受驗證碼
$str='';//strlen($str) 53位;
for($i=1;$i<=$num;$i++){
$codeNum=mt_rand(0,52);
$code.=$str{$codeNum};
$code=strtolower($code); //生成的4位驗證碼
}
/****************************/
/* 生成一張圖片 */
/* $backColor: 圖片背景顏色*/
/* $border: 邊框顏色 */
/* imagerectangle: 圖片邊框*/
/****************************/
$image=imagecreatetruecolor($width,$height);
$backColor=imagecolorallocate($image,mt_rand(220,255),mt_rand(220,255),mt_rand(220,255));
$border=imagecolorallocate($image,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
imagefill($image,0,0,$backColor);
imagerectangle($image,0,0,$width-1,$height-1,$border);

/****************************/
/* 將驗證碼放在圖片上 */
/* $fontColor: 文字顏色 */
/* $angle: 傾斜角度 */
/* $x,$y:驗證碼所在位置 */
/****************************/
for($j=0;$j<$num;$j++){
$fontColor=imagecolorallocate($image,mt_rand(0,128),mt_rand(0,128),mt_rand(0,128));
$x=($width/$num)*$j+3;
$y=$height/2+$fontSize/2;
$angle=mt_rand(-25,25);
imagefttext($image,$fontSize,$angle,$x,$y,$fontColor,"font/msyh.ttf",$code{$j});
}
/********************/
/* 設置干擾元素 */
/* 輸出兩條線 */
/********************/
$lineColor=imagecolorallocate($image,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
imageline($image,0,mt_rand(0,$height),$width,mt_rand(0,$height),$lineColor);
imageline($image,mt_rand(0,$height),0,mt_rand(0,$height),$height,$lineColor);
/********************/
/* 設置干擾元素 */
/* 輸出500個點 */
/********************/
for($k=0;$k<=200;$k++){
$dotColor=imagecolorallocate($image,240,136,159);
$x=mt_rand(0,$width-2);
$y=mt_rand(0,$height-2);
imagesetpixel($image,$x,$y,$dotColor);
}
/********************/
/* 設置session */
/* 獲取驗證碼的字元*/
/********************/
session_start();
$_SESSION['checkCode']=$code;
//生成png格式的驗證碼圖片
imagepng($image);
?>

㈦ php中文驗證碼無法顯示

session_start();
$image=imagecreatetruecolor(200,60);//創建畫布
$color=imagecolorallocate($image,mt_rand(157,255),mt_rand(157,255),mt_rand(157,255));//隨機顏色
//$color=imagecolorallocate($image,255,255,255);
imagefill($image,0,0,$color);//填充顏色
//中文驗證碼
$fontface="simhei.ttf";//確保相同目錄下有該字體
$strdb=array('好','多','人','在','學','習');
for($i=0;$i<4;$i++){
$fontsizecolor=imagecolorallocate($image,mt_rand(0,150),mt_rand(0,150),mt_rand(0,150));
$codex=iconv("GB2312","UTF-8",$strdb[mt_rand(0,5)]);//iconv不能轉數組取任意下標
imagettftext($image,mt_rand(20,24),mt_rand(-30,30),(40*$i+20),mt_rand(30,35),$fontsizecolor,$fontface,$codex);//如果用$code的話就生成1+2+3+4是個漢字的驗證碼了

}

//干擾點
for($i=0;$i<200;$i++){
$pointcolor=imagecolorallocate($image,mt_rand(50,200),mt_rand(50,200),mt_rand(50,200));
imagesetpixel($image,mt_rand(1,100),mt_rand(1,20),$pointcolor); //雪花
}
//干擾線
for($i=0;$i<3;$i++){
$linecolor=imagecolorallocate($image,mt_rand(50,200),mt_rand(50,200),mt_rand(50,200));
imageline($image,mt_rand(1,99),mt_rand(1,99),mt_rand(1,99),mt_rand(1,99),$linecolor);
}
ob_clean();
header("Content-type:image/png");
imagepng($image);
imagedestroy($image);

㈧ phpwind無法顯示驗證碼,請教高手怎麼回事

首先要確定問題是不是因為網速引起的,刷新一下頁面,或者網速好的時候再試一下。如果是本地的伺服器,那就排除網速的問題,你可以使用phpinfo()函數查看是否開啟了GD庫的支持,沒有開的話。找到php安裝目錄,找到php.ini文件,將php_gd2.dll前的分號(;)去掉重啟apache即可。如果還是不行,那就要考慮代碼問題了,是否改動代碼了,或者代碼的使用方法不對

㈨ phpstudy前台驗證碼無法顯示

你這個問題出現在前台的代碼裡面,你找到顯示這個頁面的源文件,打開源文件刪除這個驗證碼的代碼就可以了。
有個更好的辦法找到,使用F12點擊右上方的那個按鈕,就能找到這個位置了,可以右鍵查看源代碼,也可以

㈩ 為什麼apache php無法顯示驗證碼

驗證碼一般需要安裝GD庫來支持的,你可以看一下你的php.ini文件中是否開啟了這一項,如果開啟後重啟Apache報錯,那麼還需要你安裝。
Windows中是一個.dll文件,放到相應的目錄就可以了。
Linux下安裝可能對PHP的版本之類的有要求,最好別安裝最新版本的GD庫。

熱點內容
sql數據溢出 發布:2025-05-17 04:55:14 瀏覽:731
java金額 發布:2025-05-17 04:51:48 瀏覽:288
安卓怎麼下應用 發布:2025-05-17 04:46:52 瀏覽:554
演算法健壯性 發布:2025-05-17 04:41:10 瀏覽:856
jquery文件上傳進度條 發布:2025-05-17 04:39:50 瀏覽:221
信息技術腳本模板 發布:2025-05-17 04:39:00 瀏覽:258
寫sql跑 發布:2025-05-17 04:38:58 瀏覽:252
openharmony編譯依賴 發布:2025-05-17 04:32:45 瀏覽:610
什麼叫雙十一配置 發布:2025-05-17 04:14:31 瀏覽:979
翼狀胬肉使用氟尿嘧啶怎麼配置 發布:2025-05-17 04:14:24 瀏覽:976