PHP

php 登陆页代码

xiaojun
2025-09-15 / 0 评论 / 12 阅读 / 正在检测是否收录...

这是一个PHP实现的用户登录系统,包含会话管理、数据库连接和密码验证功能。

<?php
session_start(); //启动PHP会话,用于在用户登录后保存会话数据。
require 'db_connect.php'; //引入数据库连接文件,建立与数据库的连接。

if ($_SERVER['REQUEST_METHOD'] === 'POST') { //检查当前请求是否为POST方法。
  if (isset($_POST['login'])) { //验证表单中是否有提交的登录按钮。
    $username = trim($_POST['username']); //获取并去除用户名的前后空格。
    $password = trim($_POST['password']); //获取并去除密码的前后空格。
    //准备SQL查询语句,防止SQL注入。
    $stmt = $conn->prepare("SELECT id, username, password FROM users WHERE username = ?");
    $stmt->bind_param("s", $username); //绑定用户名参数到SQL语句。
    $stmt->execute(); //执行SQL查询。
    $result = $stmt->get_result(); //获取查询结果。

    if ($result->num_rows === 1) { //检查查询结果是否只有一行。
      $user = $result->fetch_assoc(); //获取关联数组形式的用户数据。
      if (password_verify($password, $user['password'])) { //验证密码是否正确。
        $_SESSION['user_id'] = $user['id']; //将会话数据保存到当前会话中。
        $_SESSION['username'] = $user['username']; //保存用户名到会话。
        header("Location: dashboard.php"); //重定向到仪表盘页面。
        exit(); //终止脚本执行。
      } else {
        $error = "Invalid username or password"; //设置错误信息。
      }
    } else {
      $error = "Invalid username or password"; //如果没有找到用户,同样设置错误信息。
    }
  }
}
?>
0

评论

博主关闭了所有页面的评论