PHP会话变量未定义


PHP session variable undefined

我有这个会话变量,当用户登录时,我试图设置为访问级别:

 $accessquery = mysql_query("SELECT roleid FROM person WHERE email = '". $email ."'");
 $access = mysql_fetch_array($accessquery);
 $_SESSION['Access'] = $access;

然而,它说"访问"是未定义的,问题是什么?

编辑*

if (($_SESSION['Access']) == "2")

这里出现错误

编辑*

会话启动已被调用

这里有两种可能:

  1. 在页面开头使用session_start();启动会话。
  2. 使用以下代码:

    $accessquery = mysqli_query($conn, "SELECT roleid FROM person WHERE email = '". $email ."'", mysqli_store_result($conn));
    $access = mysqli_fetch_row($accessquery);
    $_SESSION['Access'] = $access[0];
    

要弄清楚发生了什么,我建议您使用

print_r($any_variable);

见http://php.net/print_r

你打电话给session_start();了吗?

试着用一个固定的值来调试你的代码:$_SESSION["Test"]="test";,然后做一个var_dump($_SESSION);