今日、グループで IE6 での js open の使用について質問された人がいて、新しいウィンドウでセッションを取得できないことがわかりました。
次のテスト コードを使用してテストした結果、phpsessionid ストレージがプロセス レベルの有効性であることがわかりました。はい、open または target="_blank" の後に新しい IE プロセスが開かれると多くの人が言います
したがって、前のウィンドウの phpsessionid は新しいウィンドウに続きません。
私自身のテスト使用 ietest 6/7/8 でも同じ状況が発生します (9 は起動できません。不明です)
Windows に付属の ie10 テストを使用すると、この状況は発生しません。
Chrome もマルチスレッドですが、この状況は存在しません
Firefox にはこの状況はありません
コードをコピーします setcookie('kkkkk','bbbb', time() + 1111111);
$_SESSION['qidizi'] = 'kkkk';
dddd
b.php ページから飛び出す
コードをコピーする
コードは次のとおりです:
var_dump( $_SESSION ,$_COOKIE); テストから、Cookie の設定が遅れるとタイマーが期限切れになることがわかります。プロセス レベルではなく、開いた後にも確認できます。 IE カーネルを使用するときにユーザーがログイン状態を失わないようにするため、Cookie を使用できます。
php 設定では sid を uri に自動的に追加する方法が提供されますが、Cookie の極端な場合には相対パスは自動的に追加されません。無効になることはほとんどありません。一般的な状況には
cookie+session で十分です。
http://www.bkjia.com/PHPjc/328039.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/328039.html
技術記事
今日、グループで IE6 での js open の使用について質問された人がいて、次のテスト コードでテストしたところ、phpsessionid ストレージがプロセス レベルにあることがわかりました。新しいウィンドウでセッションを取得できませんでした。 .