用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 設定為...