0

我设置了一个登录系统,该系统存储了一个会话变量并在每个页面上检查它,但后来我转移到了一个新服务器。

现在,我设置的任何会话变量仅在设置它的页面上可用。我一直在寻找可能发生这种情况的原因,并且已经解决了权限问题。这可能与不正确的网址有关吗?服务器上的其他一切似乎工作正常。

如果有帮助的话,我正在运行最新版本的 PHP 和 Apache。

4

2 回答 2

2

因为您可能(只是假设)没有session_start();在需要的地方浏览您的其他页面。例如,创建一个名为 session.php 的页面

会话.php

session_start(); 
if (!isset($_SESSION))
{
 // Enforce logout as session is not set.
}

然后:

include "session.php";

在需要登录功能的页面中使用此代码段。

于 2013-03-25T02:10:12.750 回答
0

我以前遇到过这样的问题。您可以尝试在第一次使用 启动会话时设置会话 id session_id(),然后在每次之前使用相同的会话 id session_start()

例如:

<?php
   session_id(integer);
   session_start();
?>
于 2013-03-25T05:48:27.433 回答