您好,登錄后才能下訂單哦!
這篇文章主要介紹“php驗證碼顯示x怎么解決”,在日常操作中,相信很多人在php驗證碼顯示x怎么解決問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”php驗證碼顯示x怎么解決”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
php驗證碼顯示x表示驗證碼沒有正常顯示出來,其解決辦法:1、找到在“checkCode.php”文件;2、 在“checkCode.php”頭部增加“ini_set('display_errors','Off');”語句即可。
php驗證碼顯示x是什么意思?
PHP用戶登錄界面驗證碼顯示為“X”(驗證碼圖片無法顯示)解決辦法
1.驗證碼顯示為“X”。
2.代碼瀏覽:
1> Login.php代碼,經檢查,沒有問題!
<?php require_once "common.php"; ?> <html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"/> </head> <img src="./images/1.gif" height="100px" width="200px"/> <hr/> <h2>管理員登錄界面</h2> <body> <table style="font-size:14px;"> <form action="loginProcess.php" method="post"> <tr><td>用戶ID:</td><td><input type="text" name="id" value="<?php echo getCookieVal("id");?>"></td></tr> <tr><td>密 碼:</td><td><input type="password" name="password"></td></tr> <tr><td>驗證碼:</td><td><input type="text" name="checkCode"/></td> <td><img src="checkCode.php" οnclick="this.src='checkCode.php?aa='+Math.random()"></td> </tr> <tr><td colspan="2" align='center'><input type="checkbox" name="keep" value="yes"> 保存用戶ID</td></tr> <tr><td><input type="reset" value="重新填寫"></td> <td><input type="submit" value="用戶登錄"></td> </tr> </form> </table> <?php if(!empty($_GET['errno'])){ $errno=$_GET['errno']; if($errno==1){ echo "<font color='red' size='3'>用戶ID不能為空!</font>"; }else if($errno==2){ echo "<font color='red' size='3'>用戶密碼不能為空!</font>"; }else if($errno==3){ echo "<font color='red' size='3'>用戶名或密碼錯誤!</font>"; }else if($errno==4){ echo "<font color='red' size='3'>無法使用此非法的路徑進入該系統!</font>"; }else if($errno==5){ echo "<font color='red' size='3'>驗證碼輸入有誤!</font>"; } } ?> <body> <hr/> <img src="./images/mylogo.jpg" height="180px" width="260px"/> </html>
2>那么一定是生成驗證碼的源代碼checkCode.php出了問題!
<?php $w = 80; //設置圖片寬和高 $h = 26; $str = Array(); //用來存儲隨機碼 $string = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";//隨機挑選其中4個字符,也可以選擇更多,注意循環的時候加上,寬度適當調整 for($i = 0;$i < 4;$i++){ $str[$i] = $string[rand(0,35)]; $vcode .= $str[$i]; } session_start(); //啟用超全局變量session $_SESSION["myCheckCode"] = $vcode; $im = imagecreatetruecolor($w,$h); $white = imagecolorallocate($im,255,255,255); //第一次調用設置背景色 $black = imagecolorallocate($im,0,0,0); //邊框顏色 imagefilledrectangle($im,0,0,$w,$h,$white); //畫一矩形填充 imagerectangle($im,0,0,$w-1,$h-1,$black); //畫一矩形框 //生成雪花背景 for($i = 1;$i < 200;$i++){ $x = mt_rand(1,$w-9); $y = mt_rand(1,$h-9); $color = imagecolorallocate($im,mt_rand(200,255),mt_rand(200,255),mt_rand(200,255)); imagechar($im,1,$x,$y,"*",$color); } //將驗證碼寫入圖案 for($i = 0;$i < count($str);$i++){ $x = 13 + $i * ($w - 15)/4; $y = mt_rand(3,$h / 3); $color = imagecolorallocate($im,mt_rand(0,225),mt_rand(0,150),mt_rand(0,225)); imagechar($im,5,$x,$y,$str[$i],$color); } header("Content-type:image/jpeg"); //以jpeg格式輸出,注意上面不能輸出任何字符,否則出錯 imagejpeg($im); imagedestroy($im); ?>
3.解決方式如下:
在checkCode.php頭部增加這一句
ini_set('display_errors','Off');
也就是:
刷新頁面以后結果如下:
那么問題就解決了!
1、執行速度快。
2、具有很好的開放性和可擴展性。
3、PHP支持多種主流與非主流的數據庫。
4、面向對象編程:PHP提供了類和對象。
5、版本更新速度快。
6、具有豐富的功能。
7、可伸縮性。
8、功能全面,包括圖形處理、編碼與解碼、壓縮文件處理、xml解析等。
到此,關于“php驗證碼顯示x怎么解決”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。