登录don';在PHP中登录后,不要重定向到管理索引页面

登录don';在PHP中登录后,不要重定向到管理索引页面,php,mysqli,Php,Mysqli,大家好,下面的代码不起作用,将我重定向到管理索引页面。 请注意,数据库连接已成功建立,当我在登录页面上输入数据时,成功登录后它不会将我指向adminindex页面,而是将页面刷新到同一页面“test.php”,并打印“该信息不正确”的失败消息 <?php session_start(); if (isset($_POST['email']) && isset($_POST['password']) && isset($_POST['pincode'])

大家好,下面的代码不起作用,将我重定向到管理索引页面。 请注意,数据库连接已成功建立,当我在登录页面上输入数据时,成功登录后它不会将我指向adminindex页面,而是将页面刷新到同一页面“test.php”,并打印“该信息不正确”的失败消息

<?php

session_start();

if (isset($_POST['email']) && isset($_POST['password']) && 
isset($_POST['pincode'])) {

$email=$_POST['email'];
$pass=$_POST['password'];
$pin=$_POST['pincode'];

include('db_conx.php');


$sql = "SELECT admin_id FROM admin WHERE email='$email' AND password='$pass' 
AND pincode='$pin' LIMIT 1";
$query=mysqli_query($dbc,$sql);

$line = mysqli_num_rows($query);

 if ($line == 1){ 

     while($row=mysqli_fetch_array($query)){
         $id = $row['admin_id'];
         }
         $_SESSION['admin_id']=$id;
          $_SESSION['email']=$email;
          $_SESSION['pincode']=$pin;
         header("Location: adminindex.php");
         exit();
 }else {
    echo 'That information is incorrect, try again <a href="index.php">Click Here</a>';
    exit();

}
}

?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
    <body> 
    <h1>Welcome to Admin page login</h1>
    <br> 
    <form id="form1" name="form1" method="post" action="test.php">
        Email:<br />
          <input name="email" type="text" id="email" size="40" />
        <br /><br />
        Password:<br />
       <input name="password" type="password" id="password" size="40" />
    <br>
    <br /><br />
        Pincode :<br />
       <input name="pincode" type="number" id="pincode" size="40" />
    <br>


    <input type="submit" name="button" id="button" value="Log In" />
    </form>

    </body>


</html>

欢迎登录管理员页面

电子邮件:


密码:



Pincode:


在您的源代码中,在第一个“打印行数”之前是否有空格,我猜它的
为0
,如4所述(仔细查看您的查询后)-看起来您的查询应该总是只返回1条记录-唯一的情况当然是如果查询失败或没有按照您在本例中的预期运行。您可以接受SQL注入。请参数化查询。不要存储纯文本密码,对其进行散列。感谢@FillardMillmore,查询仅在输出时返回,在其中,它应该是基于输入的正确管理,仍然不起作用,我知道我的代码是开放的SQL注入,但它是作为一个测试,因为我想进一步,然后这个,但我甚至不能通过这个阶段。