老師,為什么總是登錄失敗
<div class="loginBox comWidth">
? ? <div class="loginImg fl">
? ? ? ?<img src="images/loginimg.png" alt="" />
? ? ?</div>
<div class="login_cont fr">
<form action="doLogin.php" method="post">
<ul class="login">
<li class="loginli">管理員帳號</li>
<li class="mb_10"><input type="text" ?name="admin_name" placeholder="請輸入管理員帳號"class="logininput"></li>
<li class="loginli">密碼</li>
<li class="mb_10"><input type="password" ?name="password" class="logininput"></li>
<li class="loginli">驗證碼</li>
<li class="mb_10"><input type="text" ?name="verify" class="login_input"><img src="getVerify.php" alt="" /><a href="">換一換</a></li>
<li class="autoLogin"><input type="checkbox" id="a1" class="checked" name="autoFlag" value="1"><label for="a1">自動登陸(一周內自動登陸)</label></li>
<li><input type="submit" value="登陸" class="loginbt"></li>
</ul>
</form>
</div>
</div>
<div class="hr_25"></div>
<div class="footer">
<p><a href="#">環購網簡介</a><i>|</i><a href="#">環購網公告</a><i>|</i> <a href="#">招納賢士</a><i>|</i><a href="#">聯系我們</a><i>|</i>客服熱線:xxx-xxx-xxxx</p>
<p>Copyright © 2011-2015 xxxx版權所有 </p>
</div>
</body>
</html>
<?php?
require_once '../include.php';
$adminname=$_POST['admin_name'];
$password=md5($_POST['password']);
$verify=$_POST['verify'];
$verify1=$_SESSION['verify'];
$autoFlag=$_POST['autoFlag'];
if($verify==$verify1){
$sql="select * from tb_admin where admin_name='{$adminname}' and password='{$password}'";
$row=checkAdmin($sql);
if($row){
//如果選了一周內自動登陸
if($autoFlag){
setcookie("adminId",$row['admin_id'],time()+7*24*3600);
setcookie("adminName",$row['admin_name'],time()+7*24*3600);
}
$_SESSION['adminName']=$row['admin_name'];
$_SESSION['adminId']=$row['admin_id'];
alertMes("登陸成功","index.php");
}else{
alertMes("登陸失敗,重新登陸","login.php");
}
}else{
alertMes("驗證碼錯誤","login.php");
}
2016-05-17
if($autoFlag){
setcookie("adminId",$row['admin_id'],time()+7*24*3600);
setcookie("adminName",$row['admin_name'],time()+7*24*3600);
}
$_SESSION['adminName']=$row['admin_name'];
$_SESSION['adminId']=$row['admin_id'];
感覺admin_id這里錯誤了,我不知道你數據庫什么設計的。老師存cookie和session是存用戶名和用戶ID。而你存admin_id,一般數據庫的ID是直接用id的。我感覺是數據庫沒有admin_id字段所以出現了登錄失敗。
2017-03-16
搞錯了,問題原因是在驗證碼。但是只要把getVerify指向image.func.php(而不是include)就好了
2017-03-16
我的原因是mysql.func的問題,php高版本不支持mysql插件拓展,所以在加載login.php的時候驗證碼就不會出來,提交的時候不知道為什么autoflag也不會出來,這兩個都注釋下(delete)就可以正常登陸了