2014-02-26 27 views
0

我今天对会议提出了一个问题,所以最终我解决了它的问题。但现在经过我开始我的会议和:会话已启动,但重定向后不存在?

header('Location: main.php'); 

它重定向英里到这个main.php文件,但磨片我在这个文件中要求:

if (!isset($_SESSION['uname'])) { 

    echo '<script type="text/javascript">alert("not set");</script>'; 
} 

我得到答案不set.Why?我已经设定了我的会话。为什么在重定向之后,当我询问这个​​会话的存在时,它说它不存在?

+3

在尝试使用'$ _SESSION'之前,您是否在main.php中调用了'session_start()'? – Paulpro

+0

并认为问题是,当我“头”的主文件在同一个主文件我不得不把“session_start();” – user3351517

回答

2

在您使用会话的每个文件中,您需要启动会话。

session_start(); 

看来,你已经错过了在main.php。

将此行添加到您正在使用会话的每个php页面的顶部。

+0

所以基本上当我这样做:$ _SESSION ['uname'] = $ uname; – user3351517

+0

它把名字广告给当前会话 – user3351517

+0

我想我明白了。非常感谢你 – user3351517