-1

嘿为什么我的函数在这里不起作用是php代码,它写在mysql_connect中:

function isUserLoggedIn() {
    global $conn;
    $sql = "SELECT user_id, password FROM user
            WHERE
            user_id='" . fixstr($loggedInUser->user_id) . "' 
            AND 
            password='" . fixstr($loggedInUser->password) . "' 
            AND
            active = 1
            LIMIT 1";

    $res = mysql_query($sql);
    $rs = mysql_fetch_array($res);  

    if($loggedInUser($res) == NULL)
    {
        return false;
    }
    else
    {
        //Query the database to ensure they haven't been removed or possibly banned?
        if(returns_result($sql) > 0)
        {
                return true;
        }
        else
        {
            //No result returned kill the user session, user banned or deleted
            $loggedInUser->userLogOut();

            return false;
        }
    }
}

该连接确实返回了一个活动窗口,但无法连接到任何功能有人知道我的代码为什么不起作用吗?

4

2 回答 2

2

$loggedInUser不在范围内。

您可以执行以下操作之一:

  • $loggedInUser通过方法参数注入。
    例如)function isUserLoggedIn($loggedInUser)
  • 本地构造或定义$loggedInUser
    例如)$loggedInUser = (new LoggedInUserFactory)->buildLoggedInUser();
  • 宣布global $loggedInUser;
于 2013-09-17T02:49:26.987 回答
1

除了Kita写的内容之外,也不知道 $conn 是否有效,也许if($loggedInUser($res) == NULL)应该$rs不是$res?我不知道函数定义,所以我不能肯定,但看起来更有可能

于 2013-09-17T02:54:47.097 回答