0

我正在网站上使用会话,但无法获取其他页面上的数据。我已经在其他主机上使用了代码,并且在其他主机上运行良好,所以我认为是主机问题。

我用来保存会话的代码是:

session_start();

$_SESSION["std_id"] = 'rst';

echo "<pre>";
print_r($_SESSION);
echo "</pre>";

我正在使用以下代码在另一页上检索它:

session_start();
echo "<pre>";
print_r($_SESSION);
echo "</pre>";

正如我所说,它在 otherhost和 on 上都可以正常工作localhost,所以这是服务器问题,但我需要保留用户的登录信息,因为我们用来通过会话维护登录记录。

我们已经在该站点上安装了 Joomla,它运行良好,可以维护所有登录信息和所有内容。

除了更改主机之外,任何人都可以建议我解决方案:) 谢谢。

编辑: 由于某种原因,我无法显示主机名。我使用的域是大学部门的子域,主站点是大学站点,我在子域的新文件夹下使用此代码。

4

2 回答 2

2

您的错误日志或 php 错误报告 ( error_reporting ) 中是否有任何错误?像"No session exists - writing to test_value"

you can also test your current session directory if its writeable:

$writeable = is_writable(ini_get("session.save_path"));

one solution is to change your session directory with this: (create the /tmp directory by hand in your root)

ini_set("session.save_path","/tmp");

or to your .htaccess

php_value session.save_path /tmp

and give 0777 permission in that /tmp directory, which must be in your root.

于 2012-06-02T18:15:43.593 回答
1

正如我在您的代码中看到的,一切看起来都很好。您无需更改您的主机,只需联系您的主机提供商即可。我之前也遇到过类似的问题。如果您联系他们,他们将编辑您的 php.ini 文件以允许您开始会话。

注意:并非每个主机提供商都允许用户使用 PHP 的许多功能。你有它要求他们设置它。他们关闭这些功能以节省 CPU 使用率。

于 2012-06-02T17:47:17.563 回答