SERVER在提交正确登录详细信息后显示空白白色页面


SERVER shows BLANK WHITE PAGE after submitting CORRECT login details

我使用mysqli编写了一个登录脚本,整个脚本一直工作到我实际输入正确详细信息的部分。如果我将字段留空或输入不正确的详细信息,它会向用户显示一条消息。。这太棒了!但是假设我输入了正确的用户名和密码组合。。它没有指向我要求它指向的页面…它只是给我显示了一个白色屏幕。。。参见下面的代码:

<?php
    // Create a connection
    include("dbconfig.php");    
    if( isset( $_POST['submit'] ) ){
        if( empty( $_POST['username'] ) or empty( $_POST['password'] ) ){
            header("location:index.php?msg0=Please complete the required fields.");
        } elseif ( !empty( $_POST['username'] ) && !empty( $_POST['password'] ) ){
            $username = $_POST['username'];
            $password = $_POST['password'];
            $sql = mysqli_query($conn, "SELECT username, password FROM logininformation WHERE username = '$username' and password = '$password'") or die (mysqli_error($conn));
            $login = ($sql) ? mysqli_fetch_assoc($sql) : false;
            if( $login == 0 ){
                header("location: index.php?msg1=Invalid username or password, please try again.");
            } elseif( $login == 1 ){
                header("location: userlogin.php?uid=$username");
            }
       }    
    }
?>

请有人就我做错了什么向我提出建议。我们将不胜感激。

谢谢,

Sohail。

在代码的最后一个elseif条件中,尝试删除==1的检查,然后运行代码。。。如果仍然不起作用,请尝试将错误日志文件粘贴到此处。

我知道这很疯狂,回答我自己的问题。。。但我找到了解决办法。见下文:

之前:

elseif(($login) == 1){
header("location:userlogin.php?uid=$username");

之后:

elseif(($login) > 1){
header("location:userlogin.php?uid=$username");