0

我有一个奇怪的问题。其中,我使用 $_SESSION 向用户显示登录错误。它工作没有问题。几天前,我已将我的主机从 Plesk 主机更改为运行 safe_mod 关闭的 cPanel 主机。不知何故,我在登录页面的 $_SESSIONs 不起作用。我在索引页面上测试了 $_SESSION 并且它工作正常并且它显示 $_SESSION 函数的工作没有任何问题。两个页面都包含相同的会话起始页面。

当我的函数文件包含在内时,登录页面也没有任何作用。(会话、发布项目、类、函数等什么都没有。)但是即使包含函数文件,一切都可以在索引页面上运行。这里发生了什么事?可能是什么原因?

PS:我正在为会员系统使用 UserCake。我的服务器不允许我在 htaccess 级别打开 PHP 错误,而且似乎什么也没有

error_reporting(E_ALL);
ini_set('display_errors', '1');

在我的错误日志中似乎也没有什么相关的。

编辑:我们成功地使用显示错误

ini_set('error_reporting', 8191); 
ini_set('display_startup_errors', 1); 
ini_set('display_errors', 1);

感谢@JA,但似乎没有错误。

4

3 回答 3

0

以下解决方案之一。

  1. 把 session_start(); 在您从中访问 $_SESSION 的页面顶部。

  2. 检查您的 php.ini,如果您不想遵循其他解决方案,可以将会话自动启动设置为 1。

于 2012-05-29T16:51:48.583 回答
0

我知道这个答案很愚蠢......但我认为你错过了 session_start(); 在您的登录页面顶部

<?php session_start();?>

或者我猜你必须使用相同的页面进行登录和注销。因此,会话由于配置错误而被取消设置或破坏。如果是这样,请检查一次代码或将文件分开以进行登录和注销...

于 2012-05-29T16:53:17.527 回答
0

在文件顶部添加session_start()

<?php session_start(); ?>
于 2012-05-29T16:54:05.167 回答