0

私のウェブサイトには 2 つの異なる領域があります。サイトエリアと管理エリア。どちらも、セッションを開始して Cookie を設定するための異なるログイン機能と、Cookie を削除してセッションを破棄するためのログアウト機能を備えています。

たとえば、次のようになります。

ログインする:

function siteLogin(){
    ...

    session_name('siteLogin');
    session_start();
}

function adminLogin(){
    ...

    session_name('adminLogin');
    session_start();
}

ログアウト:

function siteLogout(){
    ...

    session_name('siteLogin');
    session_start();
    session_destroy();
}

function adminLogout(){
    ...

    session_name('adminLogin');
    session_start();
    session_destroy();
}

問題: 両方のエリアにログインしていて、一方からログアウトすると、両方でログアウトされます。

質問:どうすればそれを防ぐことができますか?それで、一方からログアウトすると、もう一方にログインしたままになりますか?

4

1 に答える 1

1

session_destroy はセッション全体を削除します。特定のセッション値を削除したい場合は、 unset関数を使用します。

unset($_SESSION['siteLogin']);
于 2013-05-24T18:50:19.830 に答える