通過php產生純數字、字母數字、圖片、純漢字的隨機數驗證碼

來源:互聯網
上載者:User

標籤:顯示不全   前端   提交   .com   產生   效果   通過   代碼   jpg   

  現在講開始通過PHP產生各種驗證碼旅途,新手要開車了,請刷卡!

 

首先,我們開始先產生一個放驗證碼的背景圖片

註:沒有Imagejpg()這個函數,只有imagepng()函數

 

imagecreatetruecolor()函數含義

 

效果

 

考慮到我們一般驗證碼的背景圖片為白色,那麼我們現在就把背景圖片改一下

效果

 

相關函數意思

 

 

註:在輸出圖片之前,我們必須要產生header(“Content-type:image/png”),即告訴伺服器輸出的是圖片

 

一、產生純數字驗證碼

 1、產生數位代碼部分

效果

 

相關函數

 

將數位顏色設定為隨機的

效果

 

註:控制好字型大小和分布,避免字型重疊或字型顯示不全(即控制好x和y軸的定義)

 

2、增加幹擾元素(點元素)

代碼部分

效果

相關函數

 

 

3、添加幹擾元素(線元素)

效果

 

相關函數

 

註:幹擾資訊一定要控制好顏色,避免顏色吧數字給遮住了

 

二、產生字母數位驗證碼

 1、先把純數位相關設定給注釋掉,避免幹擾

代碼部分

效果

 

提示:我們可以把顯示的內容進行篩選,比如數字0和字母o是相似的,可以刪掉(字母l和數字1,字母z和數字2),讓使用者有更好的體驗

 

註:有時候我們進行篩選會出現篩選一個空內容出來,就會出現驗證碼只有三個或三個以下的字元出現,那麼我們可以進行避免

 

 

三、通過seseion儲存使用者驗證資訊

1、 首先,我們都知道,在我們要用session進行儲存資訊時,我們都要在php檔案中的最頂部進行session的開啟

其次,我們要用session進行儲存,那麼:

 

2、驗證碼通過表單提交、進行校正

表單代碼部分

 

效果

 

在使用者提交驗證碼之後,後台進行校正的代碼(在form.php的頂端進行編寫)

 

測試

 

設定不區分大小寫驗證

 

 

四、動態校正設計

1、代碼部分

效果

 

五、圖片驗證碼

1、代碼部分

 

2、前端部分

 

效果

 

 

 

六、漢字驗證碼

1、漢字驗證碼與字母數字驗證碼類似,稍作修改就好,代碼部分

效果

 

前端部分

效果

 

2、需要漢字內容較多情況

前端不變

效果

 

相關函數

 

 

註:在選擇字型樣式的時候要選擇支援中文的,比如簡體、粗體之類

 

 

 

以上就是相關的驗證碼的實現內容了,你學會了嗎!!!加油

                                              

                                                    END

 

通過php產生純數字、字母數字、圖片、純漢字的隨機數驗證碼

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.