0

login.php ページで作業しています。ユーザーが正常にログインすると、システムはユーザー名を session.like 以下のコードに保存します。

if ($user != null) {
    $_SESSION['username'] = $user["username"];
    $_SESSION['userid'] = $user["id"];
    return 0;
}

次に、ページは main.php に配置されます。Main.php は、以下のコードのようにセッションを読み取ります。

session_start();
if (isset($_SESSION['username']) == false || empty($_SESSION['username']))
{
    // transfer into login page
}
else
{
    echo $_SESSION['username'];
}

メイン ページは $_SESSION['username'] を読み取れません。値は null です。私は今どうすればいい?

4

4 に答える 4

2

状態確認ページで追加session_start()して$userください。

session_start();
if ($user != null)
{
    $_SESSION['username'] = $user["username"];
    $_SESSION['userid'] = $user["id"];
    return 0;
} 
于 2013-03-05T07:54:10.433 に答える
1

session_start()SESSION 変数を使用する場合は追加する必要があります

session_start(); //at the beginning of file 

if ($user != null) {
    $_SESSION['username'] = $user['username'];
    $_SESSION['userid'] = $user['id'];
    return 0;
} 

その後

session_start();

if (isset($_SESSION['username'])) {
    // transfer into login page
}
else
{
    echo $_SESSION['username'];
}
于 2013-03-05T07:56:44.847 に答える
1

セッション変数を使用する場合。セッション変数を使用する前に、セッションを開始する必要があります。

session_start();
if ($user != null) {
    $_SESSION['username'] = $user["username"];
    $_SESSION['userid'] = $user["id"];
    return 0;
}
于 2013-03-05T08:08:22.623 に答える
0
session_start();
if (count($user)>0 and is_array($user)) {
    $_SESSION['username'] = $user["username"];
    $_SESSION['userid'] = $user["id"];

}
于 2013-03-06T06:29:23.997 に答える