我是新手,不想只是去改变我或同事的php.ini。
我装的是Windows,他装的是Ubuntu。
我有两页login.php
和main.php
,每页的顶部有以下代码
if(session_id() == '') { session_start(); }
我将会话变量设置为1或0,这取决于登录的用户是否是管理员。
单击login后,您将被带到main.php。在页面的顶部,我做了一个print_r($GLOBALS)
,我可以看到相当多的全局变量,包括$_SESSION['admin']
条目。
在我同事的电脑上,只有大约5个全局显示,$_SESSION
不在那里。
是php.ini
设置问题吗?我该从哪里着手解决这个问题呢?
你必须调用session_start();在每一页。——Naktibalda
错了php.ini不应该与此有任何关系。——serakfalcon
那为什么它能在一台机器上运行而不能在另一台机器上运行?会话。auto_start in php.ini
会话。auto_start布尔
会话。Auto_start指定会话模块是否在请求启动时自动启动会话。默认为0(禁用)。
不依赖于它,你需要有
session_start();
在你想要访问或操作会话数据的每个页面的顶部