1

ねえみんな、誰でも私を問題から解放してくれますか。ユーザーがブラウザを閉じた場合、または同じサイトのすべてのタブを閉じた場合、ブラウザの閉じるイベントを確認し、PHPセッションを破棄します。

いくつかのスクリプトを使用しましたが、ページの更新 (F5 または CTRL+R またはブラウザーの更新ボタン) でセッションが破棄されます。

ブラウザの閉じるボタンまたは ALT+F4 を確認するだけで済みます。

つまり、ユーザーがブラウザを完全に閉じるか、すべてのタブを閉じるときに、AJAX を使用して php 関数を呼び出します。

4

4 に答える 4

4

ユーザーがブラウザを閉じるとすぐに、セッションは自動的に破棄されます。ただし、何らかの「Remember Me」機能が実装されている場合を除きます。

于 2012-08-24T10:13:53.630 に答える
1

PHPセッションはそのように機能します:

インスタンスごとに配列の静的変数タイプを格納し、ハッシュ値をPHPSESSIDという Cookie として格納することでセッション変数を識別します。

Cookie の有効期間は、ブラウザが開いている間で、ブラウザを閉じると Cookie が破棄されます。

一部のブラウザーはその Cookie を永久に保存できますが、セッションにはサーバー側でタイムアウトがあります。

Browser Close で関数を実行できるケースは不可能です。なぜなら、Browser Kill はすべての実行中の JavaScript を終了時に実行するからです。

于 2012-08-24T10:32:40.537 に答える
1

ユーザーがブラウザーを閉じたことをサーバーが認識できることを保証する方法はありません。これを達成しようとしないでください。

ユーザーがブラウザを閉じると、セッションは自動的に失われます。ブラウザは、生成された PHP セッションと関連付けるために使用される Cookie を保持しないためです。しかし、これも必ずしも保証されるものではありません。おそらく、別の質問をする必要があります。

于 2012-08-24T10:16:48.670 に答える
0

ブラウザを閉じると、セッションは自動的に破棄されます。何をしようとしていますか?

于 2012-08-24T10:15:18.263 に答える