2

session_destory()PHP でさまざまなユーザー ログアウト関数を参照しているときに、特定の用途のリモート セッション変数に常に出くわしますが、それらsetCookie()はユーザーの PHP を削除するために使用されません。SESSIONID

PHP ドキュメントには、次のように明確に記載されています。

ユーザーをログアウトするなど、セッションを完全に強制終了するには、セッション ID も設定解除する必要があります。Cookie を使用してセッション ID を伝達する場合 (デフォルトの動作)、セッション Cookie を削除する必要があります。そのために setcookie() を使用できます。

Firefox で Cookie を追跡しようとしましたが、 を使用して、次回ユーザーがログインしたときに同じID を使用してsession_destroy()PHP の Cookie を保持し続けます。SESSIONIDSESSIONID

ユーザーがログアウトした後、ユーザーのマシンからセッション ID Cookie を遠隔操作することは常に安全ではないですか? また、SessionID Cookie を削除しないとどうなりますか?

4

2 に答える 2

2

これを行うだけです:

$_SESSION = array();

そうすれば、セッションは空になります。

あなたが試みるようにそれを破壊することによって、必要はありません(セキュリティも追加されません)。

于 2012-10-08T14:40:30.263 に答える
0

これはうまくいくはずです:

session_regenerate_id ( true );

機能の説明:

session_regenerate_id — 新しく生成されたセッション ID で現在のセッション ID を更新します。これは唯一のパラメータで、デフォルトでは false です: delete_old_session - 古い関連付けられたセッション ファイルを削除するかどうか。

于 2012-10-08T14:45:13.883 に答える