PHP製做數字、字母型驗證碼及其工做原理剖析

 

準備:

    使用PHP生成驗證碼圖片,須要PHP的GD模塊,GD擴展庫用於處理圖像。因此先去檢查你的服務器使用的PHP版本是否開啓GD模塊,你可使用PHP內置函數phpinfo()去檢查,至於如何去作就不在這裏說了,相信每一個PHPer都懂的。php

    開啓或關閉GD模塊:打開PHP配置文件php.ini,找到extension=php_gd2.dll(我當前PHP版本是5.5.12,因此用的是gd2),在extension加個分號(;)表明關閉,去掉分號表明開啓。瀏覽器

思路:

        一、        生成底圖(能夠加上干擾點、干擾線…)服務器

        二、        生成驗證碼的內容(隨機的,注意調整好座標哦)session

        三、        保存驗證碼內容在服務端(經過使用session會話)函數

        四、        驗證用戶輸入的驗證碼是否與在服務端一致spa

步驟:

    (一)下面新建一個PHP文件captcha.php,就開始敲代碼吧!!orm

    一、生成底圖使用到的關鍵函數有imagecreatetruecolor(); Imagecolorallocate(); imagefill()圖片

    實現代碼:ip

    二、生成驗證碼內容使用的關鍵函數有imagecolorallocate(); imagestring();string

    實現代碼:

    三、生成干擾點代碼以下:函數-> imagecolorallocate(); imagesetpixel();

    四、生成干擾線段代碼以下:函數-> imagecolorallocate(); Imageline();

    五、收尾工做:

    六、執行captcha.php,當你在瀏覽器上看到這樣一張圖片,說明你已經成功生成了驗證碼。

    爲了讓大夥更加真實、直觀地瞭解驗證碼的完整工做原理,下面咱們一塊兒動手來體驗一把噻!!

(二)新建一個PHP文件form.php,添加一些HTML五、CSS三、JavaScript代碼,最終呈現給用戶,以下:

    執行form.php,瀏覽器顯示以下:

    (三)新建一個存放邏輯處理代碼的PHP文件check.php:

相關文章
相關標籤/搜索