我是新手,并且不想只是去改变我或同事的php.ini。
我有Windows,他已经设置了Ubuntu。
我有2页login.php
和main.php
,每页顶部有以下代码
if(session_id() == '') { session_start(); }
我将会话变量设置为1或0,具体取决于用户登录是否为管理员。
点击登录后,您将进入main.php。在页面顶部我做了一个print_r($GLOBALS)
,我可以看到很多全局变量,包括$_SESSION['admin']
条目。
在我同事的电脑上,只有大约5个全局变量显示,$_SESSION
不存在。
是php.ini
设置问题吗?我从哪里开始寻找解决方法?
答案 0 :(得分:2)
你必须调用session_start();在每一页。 - Naktibalda
右
php.ini不应该与此有任何关系。 - serakfalcon
错误
那为什么它可以在一台机器上运行而不在另一台机器上运行? php.ini
session.auto_start布尔
session.auto_start指定会话模块是否在请求启动时自动启动会话。默认为0(禁用)。
不依赖于此,你需要
session_start();
在您要访问或操作会话数据的每个页面的顶部。