You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已注册账号无法访问index.php?登录跳转异常问题求助

问题排查与修复

你的问题核心是login_db.php里的变量名不匹配,导致验证逻辑失败,无法触发页面跳转:

你从POST请求中获取的密码存在$passwords变量里,但检查密码是否为空时,错误使用了未定义的$password变量。这会直接将"Password is required"加入错误数组,导致后续跳转逻辑完全不执行,最终停留在空白的login_db.php页面。

修复后的login_db.php代码

<?php
    session_start();
    include('server.php');

    $errors = array();

    if (isset($_POST['login_user'])) {
        $username = mysqli_real_escape_string($conn, $_POST['username']);
        $passwords = mysqli_real_escape_string($conn, $_POST['password_1']);


        if (empty($username)) {
            array_push($errors, "Username is required");
        }

        // 修正变量名,与上方定义的$passwords保持一致
        if (empty($passwords)) {
            array_push($errors, "Password is required");
        }

        if (count($errors) == 0) {
            $password = md5($passwords);
            $query = "SELECT * FROM user WHERE username = '$username' AND password = '$password' ";
            $result = mysqli_query($conn, $query);

            if (mysqli_num_rows($result) == 1) {
                $_SESSION['username'] = $username;
                $_SESSION['success'] = "You are now logged in";
                header("location: index.php");
                // 必须添加exit阻止后续代码执行,避免跳转失效
                exit();
            } else {
                array_push($errors, "Wrong username/password combination");
                $_SESSION['error'] = "Wrong username or password try again!";
                header("location: login.php");
                exit();
            }
        } else {
            // 有验证错误时,统一跳回登录页并携带错误信息
            $_SESSION['error'] = implode(" ", $errors);
            header("location: login.php");
            exit();
        }
    }
?>

额外优化建议

  • 每次调用header("location: ...")后必须加exit()或die(),防止后续代码执行干扰跳转行为。
  • MD5属于不安全的哈希算法,生产环境建议改用password_hash()存储密码、password_verify()验证密码。
  • 开发阶段可以开启PHP错误提示:error_reporting(E_ALL); ini_set('display_errors', 1);,能快速定位未定义变量这类低级错误。

内容的提问来源于stack exchange,提问作者moomin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 04:45:00