PHP登錄驗證碼的實現(xiàn)與使用方法
本文實例講述了PHP登錄驗證碼的實現(xiàn)與使用方法。分享給大家供大家參考,具體如下:
1. 新建code.php驗證碼生成文件
在此之前必須打開php的GD庫,修改php.ini文件的配置,取消extension=php_gd2.dll前面的分號。代碼如下:
<?php session_start(); //生成驗證碼圖片 Header("Content-type: image/PNG"); $im = imagecreate(44,18); $back = ImageColorAllocate($im, 245,245,245); imagefill($im,0,0,$back); //背景 srand((double)microtime()*1000000); //生成4位數(shù)字 for($i=0;$i<4;$i++){ $font = ImageColorAllocate($im, rand(100,255),rand(0,100),rand(100,255)); $authnum=rand(1,9); $vcodes.=$authnum; imagestring($im, 5, 2+$i*10, 1, $authnum, $font); } for($i=0;$i<100;$i++) //加入干擾象素 { $randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255)); imagesetpixel($im, rand()p , rand()0 , $randcolor); } ImagePNG($im); ImageDestroy($im); $_SESSION['Checknum'] = $vcodes; ?>
2. 顯示驗證碼圖片
在需要顯示驗證碼的頁面中加入
<input type="text" name="passcode" > <img src="code.php">
3.判斷并獲取驗證碼的值
驗證碼是通過第一步驟代碼中的$_SESSION['Checknum'] = $vcodes;賦的值,所以驗證碼的值存在$_SESSION['Checknum']當中。在驗證頁面,使用以下代碼,
... session_start();//啟動會話 $code=$_POST["passcode"]; if( $code == $_SESSION["Checknum"]) { ... }
即可完成驗證碼登錄。
運行截圖如下:
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP圖形與圖片操作技巧匯總》、《PHP數(shù)組(Array)操作技巧大全》、《php排序算法總結(jié)》、《PHP常用遍歷算法與技巧總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計算法總結(jié)》、《PHP數(shù)學運算技巧總結(jié)》、《php正則表達式用法總結(jié)》、《PHP運算與運算符用法總結(jié)》、《php字符串(string)用法總結(jié)》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計有所幫助。
相關(guān)文章
KindEditor在php環(huán)境下上傳圖片功能集成的方法示例
這篇文章主要介紹了PHP環(huán)境下如何實現(xiàn)使用KindEditor編輯器上傳圖片,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-07-07php獲取服務(wù)器端mac和客戶端mac的地址支持WIN/LINUX
這篇文章主要介紹了php獲取服務(wù)器端mac和客戶端mac地址的方法,需要的朋友可以參考下2014-05-05PHP Swoole異步MySQL客戶端實現(xiàn)方法示例
這篇文章主要介紹了PHP Swoole異步MySQL客戶端實現(xiàn)方法,結(jié)合實例形式分析了php操作Swoole擴展異步mysql操作的面向?qū)ο髮崿F(xiàn)方式,需要的朋友可以參考下2019-10-10PHP+MySql+jQuery實現(xiàn)的"頂"和"踩"投票功能
這篇文章主要為大家詳細介紹了PHP+MySql+jQuery實現(xiàn)的"頂"和"踩"投票功能,具有一定的參考價值,感興趣的朋友可以參考一下2016-05-05PHP改進計算字符串相似度的函數(shù)similar_text()、levenshtein()
PHP 原生的similar_text()函數(shù)、levenshtein()函數(shù)對中文漢字支持不好,我自己寫了一個,測試使用正常,推薦給大家,如果有什么問題,請留言2014-10-10