登录表单标题()显示空白页


Login Form header() shows blank page

我创建了一个登录表单,该表单应在发送表单后将用户定向到该页面,但它只显示一个空白页

带有 **http://localhost/Cisu/AccHolder/holderlogin.php 的链接

登录表格

<?php 
session_start();
?>
<!DOCTYPE html>
<html >
    <head>
            <title>Login</title>
            <link type="text/css" rel="stylesheet" href="css/login.css">
            </head>
            <body>
                <form method="" action="holderlogin.php">
                    <div class="container">
                        <div class="profile">
                            <button class="profile__avatar" id="toggleProfile">
                                <img src="images/sbma.png" alt="Avatar" />
                            </button>
                            <div class="profile__form">
                                <div class="profile__fields">
                                    <div class="field">
                                        <input type="text" id="user" name="user" class="input" required pattern=.*'S.* />
                                        <label for="username" class="label">Username</label>
                                    </div>
                                    <div class="field">
                                        <input type="password" id="pass" name="pass" class="input" required pattern=.*'S.* />
                                        <label for="password" class="label">Password</label>
                                    </div>
                                    <div class="profile__footer">
                                        <input id="Submit" name="Submit "type = "Submit" class="btn"/>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                    <script src="javascript/login.js"></script>
                </form>
            </body>
        </html>

持有人登录.php

<?php
ob_start();
session_start();
include('dbconn.php');// Database connection and settings
// checking the user
if(isset($_POST['Submit'])){
$user = mysqli_real_escape_string($con,$_POST['user']);
$pass = mysqli_real_escape_string($con,$_POST['pass']);
$sel_user = "select * from tbl_accholder where accholder_Username='$user' AND accholder_Password='$pass'";
$run_user = mysqli_query($con, $sel_user);
$check_user = mysqli_num_rows($run_user);
if($check_user==1){
while ($row = mysqli_fetch_array($run_user)) {
    $run_ID = $row['accholder_ID'];
    $run_user = $row['accholder_Username'];
}
$_SESSION['accholder_Username']= $user;
$_SESSION['accholder_ID']= $run_ID;
header( 'Location: MainMenu.php'); 
} else
                                echo "please wait while redirecting...";
                                echo "<script> alert('Log-In Failed!'); </script>";
                                echo "<script> document.location.href = 'Login.php' </script>";
ob_end_flush();
}

?>

您正在检查是否设置了$_POST['Submit']

但是,在您的表单中,name 属性Submit带有一个额外的空格:

<input id="Submit" name="Submit "type = "Submit" class="btn"/>

这可能是问题的原因,因为您说它向我显示了一个空白页

- 您没有为表单列出任何方法,但正在检查 $_POST 数组以检查"提交"。它应该是:

<form method="POST" action="holderlogin.php">

不知道它是否导致了你的问题,但是你在php声明之前有一个前导空格 - 如果你在代码后面设置头请求,这可能会导致php渲染出现问题 - 在头请求之前不能呈现字符。

<?php

此外,您将表单的操作列为"持有人登录.php"

但将文件名列为"Holderlogin.php" - 这可能只是在此处输入代码时的拼写错误,但值得检查。