Smarty会话变量问题

时间:2011-03-09 08:13:40

标签: php smarty

我有四个文件。

1. index.php
2. index.tpl
3. file2.php
4. file2.tp

我在index.php中设置会话变量,如此

$_SESSION['isVisible'] = true;

然后我在file2.php中访问此变量,就像这样

echo ($_SESSION['isVisible']);

但它不起作用。

我没有手动启动会话,因为我认为会话已由Smarty启动。

知道如何访问此变量?

1 个答案:

答案 0 :(得分:1)

这是一个小片段,可以帮助您检测会话是否已经启动,

不要忘记,使用session_start初始化的会话只能用于首次创建它的页面的目录树中的页面。

它可以解释为什么Smarty使用另一个session_id而不是当前的脚本...

function session_is_started() {
    if (isset($_SESSION)) { 
        return true; 
    } else { 
        return false; 
    }
}

if (!session_is_started()){
    session_start();
    $_SESSION['isVisible'] = true;
}

echo $_SESSION['isVisible'];