這篇文章給大家分享的是有關php寫注冊登錄驗證碼的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
authimg.php生成驗證碼的文件:
<? $IsLetter = false; //是否出現字母 session_start(); $Num = $_GET["n"]; //生成驗證碼圖片 header("Content-type: image/PNG"); $im = imagecreate(46,20); srand((double)microtime()*1000000); $Red = rand(0,200); $Green = rand(0,200); $Blue = rand(0,200); $Color = imagecolorallocate($im, $Red, $Green, $Blue); $BackGround = imagecolorallocate($im, 255,255,255); imagefill($im,0,0,$BackGround); if($IsLetter) { $a = substr(md5($Num*10000000000000000),0,1); $b = substr(md5($Num*10000000000000000),4,1); $c = substr(md5($Num*10000000000000000),8,1); $d = substr(md5($Num*10000000000000000),12,1); } else { $a = substr(hexdec(md5($Num*10000000000000000)),2,1); $b = substr(hexdec(md5($Num*10000000000000000)),3,1); $c = substr(hexdec(md5($Num*10000000000000000)),4,1); $d = substr(hexdec(md5($Num*10000000000000000)),5,1); } $Authnum = strtoupper($a.$b.$c.$d); $_SESSION["Authnum"] = $Authnum; imagestring($im, 5, 5, 2, $Authnum, $Color); for($i=0;$i<200;$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_start(); $AuthInput = $_POST["AuthInput"]; $action = $_GET["action"]; ?> <script language="javascript"> function lyalert(){ if( addform.AuthInput.value=="") { alert("請填寫驗證碼"); document.addform.AuthInput.focus(); return false; } } </script> <form name="addform" method="post" action="?action=save" id="addform" onsubmit="return lyalert()"> <table width="500" border="1" cellpadding="5" cellspacing="0"> <tr><td>驗證碼:</td> <td><input name="AuthInput" type="text" id="AuthInput" size="8" maxlength="4" /><script>document.write("<img src=\"authimg.php?n=",Math.random(),"\" />");</script></td></tr> <tr><td colspan="2" align="center"><input type="submit" name="Button1" value="確定" id="Button1" /></td> </tr> </table> <p> </p> </form> <? if($action=='save') { if ($_SESSION["Authnum"] != $AuthInput) { ?> <script language="javascript"> alert("驗證碼輸入不正確"); </script> <? } else { ?> <script language="javascript"> alert("提交成功!"); </script> <? } } ?>
感謝各位的閱讀!關于php寫注冊登錄驗證碼的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。