您好,登錄后才能下訂單哦!
了解php驗證碼亂碼怎么辦?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!
php驗證碼亂碼的解決辦法:1、修改訪問驗證碼生成方法函數的路徑;2、修改文件編碼,并去掉BOM頭;3、檢查驗證碼生成方法;4、修改服務環境。
具體問題:
php驗證碼輸出全是亂碼...
<?php session_start(); header("content-type:image/png"); //設置創建圖像的格式 $image_width=70; //設置圖像寬度 $image_height=18; //設置圖像高度 srand(microtime()*100000); //設置隨機數的種子 for($i=0;$i<4;$i++){ //循環輸出一個4位的隨機數 $new_number.=dechex(rand(0,15)); } $_SESSION[check_checks]=$new_number; //將獲取的隨機數驗證碼寫入到SESSION變量中 $num_image=imagecreate($image_width,$image_height); //創建一個畫布 imagecolorallocate($num_image,255,255,255); //設置畫布的顏色 for($i=0;$i<strlen($_SESSION[check_checks]);$i++){ //循環讀取SESSION變量中的驗證碼 $font=mt_rand(3,5); //設置隨機的字體 $x=mt_rand(1,8)+$image_width*$i/4; //設置隨機字符所在位置的X坐標 $y=mt_rand(1,$image_height/4); //設置隨機字符所在位置的Y坐標 $color=imagecolorallocate($num_image,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200)); //設置字符的顏色 imagestring($num_image,$font,$x,$y,$_SESSION[check_checks][$i],$color); //水平輸出字符 } imagepng($num_image); //生成PNG格式的圖像 imagedestroy($num_image); //釋放圖像資源 ?>
解決辦法:
1.訪問驗證碼生成方法/函數的路徑不對;
2.文件編碼不對,UTF8編碼沒有去掉BOM頭;
3.驗證碼生成方法有問題。
4.環境不支持。
感謝各位的閱讀!看完上述內容,你們對php驗證碼亂碼怎么辦大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。