使用准备好的语句登录不起作用 PHP

问题描述

我的网站上有一个简单的管理面板,您可以在其中输入您的 usernamepassword 来访问。但由于某种原因它不起作用。可能是什么问题?

validate.PHP

if($_SERVER['REQUEST_METHOD'] == 'POST'){

      $sql = $connection->prepare("SELECT login,password FROM adminpanel WHERE login=? AND password=?");
      $login = $_POST['login'];
      $password = $_POST['password'];
      $sql->bind_param('ss',$login,$password);
      $sql->execute();

            if($sql->num_rows == 1){
            $_SESSION['user'] = $login;
                header('location: ../admin.PHP');
            }else{
                $_SESSION['logwarning'] = 'Wrong login or password!';
                header('location: ../login.PHP');
            };
      $connection->close();
    };

login.PHP

<form action="configs/validate.PHP" method="POST">
  <img class="mb-4" src="img/main/logo.png" alt="logo" width="90">

  <input type="text" name="login" value="<?= $_POST['login'] ?? ''; ?>" id="inputLogin" class="form-control mb-1" placeholder="Login" required="" autofocus="" autocomplete="on">

  <input type="password" name="password" id="inputPassword" class="form-control mt-1" placeholder="Password" required="" autocomplete="on">
  <input type="hidden" name="token" value="<?= $_SESSION['token']; ?>">
  <button class="w-100 btn btn-lg btn-primary" type="submit">Sign in</button>
</form>

此外,如果无限期地尝试输入数据,我希望输入的名称值(login 字段)不会消失。我从 $_POST 变量中添加了这个值,但由于某种原因它没有被保存。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)