$ _SESSION变量在$ GLOBALS中不可见

时间:2014-08-20 09:30:04

标签: php

我是新手,并且不想只是去改变我或同事的php.ini。

我有Windows,他已经设置了Ubuntu。

我有2页login.phpmain.php,每页顶部有以下代码

if(session_id() == '') {
    session_start();
}

我将会话变量设置为1或0,具体取决于用户登录是否为管理员。

点击登录后,您将进入main.php。在页面顶部我做了一个print_r($GLOBALS),我可以看到很多全局变量,包括$_SESSION['admin']条目。

在我同事的电脑上,只有大约5个全局变量显示,$_SESSION不存在。

php.ini设置问题吗?我从哪里开始寻找解决方法?

1 个答案:

答案 0 :(得分:2)

  

你必须调用session_start();在每一页。 - Naktibalda

  

php.ini不应该与此有任何关系。 - serakfalcon

错误

那为什么它可以在一台机器上运行而不在另一台机器上运行? php.ini

中的 session.auto_start
  

session.auto_start布尔

     

session.auto_start指定会话模块是否在请求启动时自动启动会话。默认为0(禁用)。

不依赖于此,你需要

session_start();

在您要访问或操作会话数据的每个页面的顶部。