php 使用GD庫生成驗證碼

2021-05-22 07:29:28 字數 1871 閱讀 4824

gd庫是php進行圖象操作乙個很強大的庫。

先在php.ini裡增加一行引用:extension=php_gd2.dll

重啟apache。做乙個測試頁 var_dump(gd_info());輸出資料表明gd庫引用成功。

表單auth.html

驗證碼title

>

head

>

<

body

>

<

h1>

請輸入驗證碼

h1>

<

form 

action

="check_auth.php"

method

="post"

>

<

input 

name

="auth"

type

="text"

>

<

img 

src="auth.php"

border

="0"

/>

<

input 

type

="submit"

value

="提交"

>

form

>

body

>

html

>

生成驗證碼 auth.php

<?

phpsession_start

();header("

content-type:image/png");

$img_width

=100

;$img_height=20

;srand

(microtime()*

100000

);for($i

=0;$i

<4;

$i++

)$_session

[check_auth]

=$new_number

;$new_number

=imagecreate(

$img_width

,$img_height

);//

建立圖象

imagecolorallocate(

$new_number

,255

,255

,255

);  

//設定背景色為白色

for($i=

0;$i<

strlen

($_session

[check_auth]);

$i++

)imagepng(

$new_number

);imagedestroy(

$new_number

);?>

提交頁面 check_auth.php

<?

phpsession_start

();$auth

=$_post['

auth'];

if(empty

($auth

))if

($auth

==$_session['

check_auth'])

else

?>

PHP利用GD庫生成驗證碼

check code function check code width 100 height 50 num 4 type jpeg 將生成的num個字元拼接起來 string.sprintf c ascii 隨機生成淺色背景 imagefilledrectangle img,0 0,width h...

php 基於GD庫驗證碼

頁面關鍵html 請輸入驗證碼看不清 checkcode 方法,採用ajax校驗驗證碼 呼叫gd庫類,畫驗證碼 隨機生成乙個4位數字的驗證碼 num for i 0 i 4 i session start 開啟session session yan substr num,0,4 用session記住...

PHP使用GD庫封裝驗證碼類

除錯小技巧 當無法顯示時,將header函式注釋掉就可以看到報錯資訊了 字型檔案放在當前檔案目錄的font資料夾中,windows的字型可以到c windows fonts目錄下複製過來,處理好檔名即可 關於gd庫和物件導向的知識點可以看我前面幾篇隨筆,直接上 了 驗證碼類 namespace ve...