0

我在网站上有一些页面。所有页面都有一个栏,我把它放在下面:

session_start();
include('bar.php');
echo $bar;

bar.php 的内容或多或少是这样的:

session_start();
$username=$_SESSION['username'];
if empty($username) {
    $bar='You are not logged in.';
} else {
    $bar='You are logged in.';
}

问题是有时该栏可以工作(即,当我实际登录时它显示“已登录”),但有时它不会(它显示未登录用户的内容)。例如,浏览索引我看到未登录用户的栏,但在登录页面上显示登录用户的栏。

另外,我尝试删除我的 PHPSESSID cookie,然后登录:它有效,它没有显示这个错误。为什么?

4

1 回答 1

1

第二个 session_start(); 只是被忽略了,所以我认为这不是问题。您可以检查 session_start() 是否返回 false:http ://es.php.net/manual/en/function.session-start.php

于 2012-09-30T10:13:26.300 回答