Php会话奇怪的行为

时间:2013-06-30 19:41:33

标签: php session

我的tmp目录无法通过php.Hence访问,会话无法正常工作(而且他们没有) 但在这种情况下,他们出于某种未知的原因。

这是方案,

我有一个页面index.php,用于验证用户凭据并设置会话变量并将用户重定向到panel.php

if($verified)
{
$_SESSION['unid']=$unid;
$wel="Welcome :";
$_SESSION['una']=$user;
$_SESSION['level']=$lev;
$_SESSION['pas']=$pass;
$_SESSION['wel']=$wel;
header("location:panel.php");
}

在panel.php上我有代码

<?php
ob_start();
if(session_id()==''){
session_start();
}

if($_SESSION['una'] == "")
{
header("location:index.php");
}

当我通过index.php登录时,虽然无法读取会话数据,但panel.php会像通常的会话一样打开

刷新页面时,会话消失,页面重定向!

对此行为有何解释?

PHP V5.3.10

1 个答案:

答案 0 :(得分:0)

您始终需要在页面开头调用session_start()。它实际上并不启动新会话,而是初始化会话,包括加载会话变量。这通常是你做的第一件事,而且通常不仅仅是在你当前的panel.php。

之类的条件下