程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php中文漢字驗證碼程序

php中文漢字驗證碼程序

編輯:關於PHP編程

本文章利用三個文件來簡單的講了一下關於php中怎麼去應用中文驗證碼,中文因為是漢字可能出現亂碼所以我們就定義了一個文件來專門處理,有需要的朋友可以參考下。  代碼如下 復制代碼


<?php   
/*   
* 文件:chinesechar.php   
* 作用:漢字數據儲存   
*/   
$ChineseChar = array("人","出","來","友","學","孝","仁","義","禮","廉","忠","國","中","易","白","者","火 ","土","金","木","雷","風","龍","虎","天","地",   "生","暈","菜","鳥","田","三","百","錢","福 ","愛","情","獸","蟲","魚","九","網","新","度","哎","唉","啊","哦","儀","老","少","日",   "月 ","星");   
?>   

<?php   
/*   
* 文件:check.php   
* 作用:驗證   

*/   
session_start();   
$errorMSG = '';   
//驗證用戶輸入是否和驗證碼一致   
if(!is_null($_POST['check']))   
{   
        if (strcasecmp($_SESSION['code'],$_POST['code'])==0)   
            $errorMSG = "<p style="font-size:12px;color:#009900">驗證成功!</p>";   
        else   
            $errorMSG = "<p style="font-size:12px;color:#FF0000">驗證失敗!</p>";   
}   
?>   
<html>   
<head>   
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">   
</head>   
<body>   
<?php   
if($errorMSG){   
echo $errorMSG;   
}   
?>   
<form action=<?php echo $_SERVER['PHP_SELF']?> method=post>   
請輸入驗證碼:<input type="text" name="code" style="width:   
80px"><img src="code.php">   
<br>   
<input type="submit" name="check" value="提交驗證碼">   
</form>   
</body>   
</html>   

<?php   
/*   
* 文件:code.php   
* 作用:驗證碼生成   
 
* 特注:由 沒牙的草 指導 版權所有轉載注明出處!有付出才會有收獲! 
*/   
include_once("chinesechar.php");   
session_start();   
// 設置 content-type   
header("Content-type: image/png");   
// 創建圖片   
$im = imagecreatetruecolor(120, 30);   

// 創建顏色   
$fontcolor = imagecolorallocate($im, 255, 255, 255);   
$bg = imagecolorallocate($im, 0, 0, 0);   

// 設置文字   
for($i=0;$i<4;$i++) $text .= $ChineseChar[(array_rand($ChineseChar))];   

$_SESSION['code'] = $text;   
// 設置字體   
$font = 'simkai.ttf';   

// 添加文字   
imagettftext($im, 18, 0, 11, 21, $fontcolor, $font, iconv("GB2312","UTF-8",$text));   

// 輸出圖片   
imagepng($im);   
imagedestroy($im);   
?>

如果想把上面的程序改成英文數字,只要在chinesechar.php 裡面的數組中文改成數字或字母就KO了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved