登录功能的其他声明并不总是正常工作

时间:2010-07-29 08:13:00

标签: php

以下代码是我正在使用的PHP / MySQL登录系统的一部分。它确定是否显示登录字段,并且它应该仅在用户未登录时显示它们。有时它会在用户登录时显示它们,并将用户注销。

关于我应该寻找什么来解决问题的任何想法?

提前致谢,

约翰

<?php
if (!isLoggedIn())
{

    if (isset($_POST['cmdlogin']))
    {

        if (checkLogin($_POST['username'], $_POST['password']))
        {
            show_userbox();

        } else
        {
            echo "Incorrect Login information !";
            show_loginform();
        }
    } else
    {

        show_loginform();
    }

} else
{

    show_userbox();

}

?>

2 个答案:

答案 0 :(得分:0)

您可以尝试:

<?php
if (!isLoggedIn())
{

    if (isset($_POST['cmdlogin']))
    {

        if (checkLogin($_POST['username'], $_POST['password']))
        {
            show_userbox();

        } else
        {
            echo "Incorrect Login information !";
            show_loginform();
        }
    } else
    {

        show_loginform();
    }
    exit();

} else
{

    show_userbox();

}

?>

答案 1 :(得分:0)

您要做的是重新评估函数的返回值。确保它们始终返回布尔值。

我看不到其他函数的来源,所以看看isLoggedIn()和CheckLogin的代码也许是个好主意;)

问候,斯蒂芬