From a1be34c3b9988dc319b04199a396aa98815baf6f Mon Sep 17 00:00:00 2001 From: admin <605696661@qq.com> Date: Thu, 2 Jul 2026 10:34:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=E8=B0=83=E8=AF=95.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 调试.php | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 调试.php diff --git a/调试.php b/调试.php new file mode 100644 index 0000000..fe5f88b --- /dev/null +++ b/调试.php @@ -0,0 +1,116 @@ +0,'time'=>time()]; +$loginErr = $_SESSION[$lockKey]; +// 超过5分钟重置计数 +if (time() - $loginErr['time'] > 300) { + $_SESSION[$lockKey] = ['num'=>0,'time'=>time()]; + $loginErr = $_SESSION[$lockKey]; +} + +if ($_POST) { + $username = trim($_POST['username'] ?? ''); + $pwd = trim($_POST['pwd'] ?? ''); + if ($loginErr['num'] >= 5) { + $errMsg = "密码错误次数过多,请5分钟后重试"; + } elseif (!$username || !$pwd) { + $errMsg = "账号密码不能为空"; + } else { + $conn = mysqli_connect($dbHost, $dbUser, $dbPass, $dbName); + $u = mysqli_real_escape_string($conn, $username); + $sql = "SELECT id,username,password,role FROM sys_user WHERE username='$u' LIMIT 1"; + $res = mysqli_query($conn, $sql); + $user = mysqli_fetch_assoc($res); + if ($user && password_verify($pwd, $user['password'])) { + // 登录成功,清空错误计数,写入会话 + $_SESSION[$lockKey] = ['num'=>0,'time'=>time()]; + $_SESSION['user_id'] = $user['id']; + $_SESSION['username'] = $user['username']; + $_SESSION['role'] = $user['role']; + $_SESSION['login_time'] = time(); + // 更新最后登录时间 + mysqli_query($conn, "UPDATE sys_user SET last_login=NOW() WHERE id=".$user['id']); + header("Location: dashboard.php"); + exit; + } else { + $_SESSION[$lockKey]['num']++; + $errMsg = "账号或密码错误"; + } + mysqli_close($conn); + } +} +?> + + +
+ + +