1. 程式人生 > >密碼錯誤三次限制登錄

密碼錯誤三次限制登錄

har static init ESS 成功 sub class con scrip

HTML頁面的代碼:

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<center>
<table>
<tr>
<td>用戶名</td>
<td><input type="text" class="name"></td>
<td><span class="sp1"></span></td>
</tr>
<tr>
<td>密碼</td>
<td><input type="password" class="pwd"></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="登錄" class="sub"></td>
</tr>
</table>
</center>
<script src="__STATIC__/jquery.min.js"></script>
<script>
//判斷用戶
$(".name").blur(function () {
var name=$(".name").val();
//請求
$.post(
"{:url(‘index/user_pan‘)}",
{
name:name
},
function (data) {
if(data==1)
{
$(".sp1").empty();
$(".sp1").append("該用戶不存在")
}else{
$(".sp1").empty();
$(".sp1").append("√")
}
}
)
})
$(".sub").click(function () {
var name=$(".name").val();
var pwd=$(".pwd").val();
//請求
$.post(
"{:url(‘index/login_do‘)}",
{
name:name,
pwd:pwd
},
function (data) {
if(data==1)
{
alert("密碼錯誤");
}else if(data==2)
{
alert("45秒後登錄")
}else if(data==3)
{
alert("著啥急,還沒到45秒後呢!")
}else if(data==4)
{
alert("登錄成功")
}
}
)
})
</script>
</body>
</html>

PHP頁面的代碼:
//登錄
public function login()
{
return view("login");
}
//判斷用戶
public function user_pan()
{
$name=Request::instance()->param("name");
$a=Db::table("user")->where("name=‘$name‘")->find();
Session::set("b_id",$a[‘b_id‘]);
if(!$a){ return 1; }//判斷用戶
}
//登錄的值
public function login_do()
{
$b_id=Session::get("b_id");
$stat=Db::table("user")->where("b_id=$b_id")->find();
$static=$stat[‘static‘];
if($static==1)
{
Session::set("add_time",time(),‘think‘);
$now_time=$stat[‘now_date‘];
$add_time=Session::get("add_time",‘think‘);
$time_aa=$add_time-$now_time;
if($time_aa<=45)
{
return 3;
}else{
Db::table("user")->where("b_id=‘$b_id‘")->update([‘sum‘=>0,‘sta tic‘=>0]);
}
}

$zong_shu=Db::table("user")->where("b_id=‘$b_id‘")->find();
$shu=$zong_shu[‘sum‘];
if($shu>=2)
{
Db::table("user")->where("b_id=‘$b_id‘")->update([‘static‘=>1]);
return 2;//計算總數大於三則不能登錄
}
else
{
$name=Request::instance()->param("name");
$pwd=Request::instance()->param("pwd");
$a=Db::table("user")->where("name=‘$name‘and pwd=‘$pwd‘")->find();
if(!$a)
{
$b_id=Session::get("b_id");
$b=Db::table("user")->where("b_id=‘$b_id‘")->find();
$sum=$b[‘sum‘]+1;
$now_date=time();
Db::table("user")->where("b_id=‘$b_id‘")->update([‘sum‘=>"$sum",‘now_date‘=>$now_date]);
return 1;
}else{
return 4;//登錄成功
}
}

}


密碼錯誤三次限制登錄