php實現數字驗證碼

2021-07-25 15:50:47 字數 987 閱讀 7930

用php實現驗證碼,驗證碼是為了區別機器與人的操作,提高安全性。需要安裝伺服器軟體,我使用的是wamp,之後編寫php驗證碼頁面。

分為以下幾個步驟來實現:

一、實現驗證碼底圖

目標:通過php**,生成一張100*30px大小的

方法:resource imagecreatetruecolor(int $width,int $height)

注意事項:

(a)依賴gd擴充套件

(b)輸出前,必須提前輸出header資訊

(c)該方法預設輸出為黑色背景

//二、實現數字驗證碼

方法:int imagecolorallocate(resource $image,int $red,int $green,int $blue);

bool imagestring(resource $image,int $font,int $x,int $y,string $s,int $col);

注意事項:/控制好字型大小與分布,避免字型重疊或顯示不全

//三、增加干擾元素

目標:為驗證碼增加干擾元素,干擾的點或線

方法:bool imagesetpixel(resource $image,int $x,int $y,int $color);

bool imageline(resource $image,int $x1,int $y1,int $x2,int $y2,int $color)

注意事項:干擾資訊一定控制好顏色,避免「喧賓奪主」;

四、通過session儲存驗證資訊

目標:在伺服器端記錄驗證碼資訊,便於使用者輸入後做校驗

方法:bool session_start(void)

注意事項:(a)session_start()必須處於指令碼最頂部

(b)多伺服器情況,需要考慮集中管理session資訊

五、驗證碼通過表單提交、校驗

目標:將已生成的驗證碼提供給使用者,並校驗使用者驗證碼的正確性

方法:html

PHP實現驗證碼

目前,不少 為了防止使用者利用機械人自動註冊 登入 灌水,都採用了驗證碼技術。所謂驗證碼,就是將一串隨機產生的數字或符號,生成一幅,裡加上一些干擾象素 防止 ocr 由使用者肉眼識別其中的驗證碼資訊,輸入表單提交 驗證,驗證成功後才能使用某項功能。我們這裡展示了如何編寫 php程式實現驗證碼功能 一...

php實現驗證碼

繪製驗證碼 num 5 str getcode num,2 建立畫布 width num 20 height 30 im imagecreatetruecolor width,height color 0 imagecolorallocate im,100,18,199 color 1 imagec...

PHP實現驗證碼

建立並設定大小 image imagecreatetruecolor 100,30 設定驗證碼顏色 方法 imagecolorallocate 物件,int red,int green,int blue bgcolor imagecolorallocate image,190,234,239 設定為...