PHP 登錄頁生成驗證碼,驗證登錄

1搂妻、生成驗證碼
<?php
session_start();

$width = 100;
$length = 30;
$captch_code = '';

$image = imagecreatetruecolor($width, $length);
$color = imagecolorallocate($image, 255, 255, 255);
imagefill($image, 0, 0, $color);

//產(chǎn)生隨機數(shù)
for($i=0; $i<4; $i++)
{
$fontsize = 6; //?
$fontcolor = imagecolorallocate($image, rand(0,120), rand(0,120), rand(0,120));

$data = "abcdefghijklmnopqrstuvwxyz1234567890";  
$fontcontent = substr($data,rand(0,strlen($data)),1);  
$captch_code .= $fontcontent;  

$x = ($i*$width/4) + rand($length/6,$length/3);  
$y = rand($length/6,$length/3);  

imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);  

}
$_SESSION['authcode'] = $captch_code;

//干擾點
for($i=0; $i<200; $i++)
{
$pointcolor = imagecolorallocate($image, rand(50,200), rand(50,200), rand(50,200));
imagesetpixel($image, rand(1,$width-1), rand(1,$width-1), $pointcolor);
}

//干擾線
for($i=0; $i<5; $i++)
{
$linecolor = imagecolorallocate($image, rand(80,220), rand(80,220), rand(80,220));
imageline($image, rand(1,$width-1), rand(1,$width/3-1), rand(1,$width-1), rand(1,$width/3-1), $linecolor);
}

header("content-type: image/png");
imagepng($image);
imagedestroy($image);
?>

2、登錄處調(diào)用驗證碼
<li><label>驗證碼:</label>
<input name="code" type="text" class="inp1" maxlength="20" onFocus="document.getElementById('yzm').style.display='block'" />
<a href="javascript:void(0)" onClick="document.getElementById('captch_code').src='app/code_num.php?r='+Math.random()" title="看不清喳坠,換一個"><img id="captch_code" border="1" src="app/code_num.php?r=<?php echo rand();?>" height="35px" /></a>
</li>

3瓢姻、php登錄驗證
if (isset($_POST['submit'])){
session_start();
if(($_POST['code']!=$_SESSION['authcode'])) {
exit('<script type="text/javascript">alert("驗證碼錯誤.");window.location.href="login.php";</script>');
}
$query = "select * from ds_user where name = '{$_POST['name']}' and password = '{$_POST['password']}'";
$result = mysqli_query($conn, $query);
if (mysqli_num_rows($result) == 1){
echo "<script language="javascript">alert('登陸成功');window.location.href='/templates/admin/index.php';</script>";
}else{
echo "<script language="javascript">alert('密碼錯誤');window.location.href='login.php';</script>";
}
}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子山涡,更是在濱河造成了極大的恐慌,老刑警劉巖唆迁,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鸭丛,死亡現(xiàn)場離奇詭異,居然都是意外死亡唐责,警方通過查閱死者的電腦和手機鳞溉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鼠哥,“玉大人熟菲,你說我怎么就攤上這事∑涌遥” “怎么了抄罕?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長于颖。 經(jīng)常有香客問我贞绵,道長,這世上最難降的妖魔是什么恍飘? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任榨崩,我火速辦了婚禮,結(jié)果婚禮上章母,老公的妹妹穿的比我還像新娘母蛛。我一直安慰自己,他們只是感情好乳怎,可當(dāng)我...
    茶點故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布彩郊。 她就那樣靜靜地躺著,像睡著了一般蚪缀。 火紅的嫁衣襯著肌膚如雪秫逝。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天询枚,我揣著相機與錄音违帆,去河邊找鬼。 笑死金蜀,一個胖子當(dāng)著我的面吹牛刷后,可吹牛的內(nèi)容都是我干的的畴。 我是一名探鬼主播,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼尝胆,長吁一口氣:“原來是場噩夢啊……” “哼丧裁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起含衔,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤煎娇,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后贪染,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體逊桦,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年抑进,在試婚紗的時候發(fā)現(xiàn)自己被綠了强经。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡寺渗,死狀恐怖匿情,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情信殊,我是刑警寧澤炬称,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站涡拘,受9級特大地震影響玲躯,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜鳄乏,卻給世界環(huán)境...
    茶點故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一跷车、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧橱野,春花似錦朽缴、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蜗元,卻和暖如春或渤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背奕扣。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工薪鹦, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人成畦。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓距芬,卻偏偏與公主長得像,于是被迫代替她去往敵國和親循帐。 傳聞我的和親對象是個殘疾皇子框仔,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,554評論 2 349

推薦閱讀更多精彩內(nèi)容