0

私は小さなアプリケーションを作成しました.そのアプリケーションにログインとログアウトの時間を保存したい.ユーザーは正しくログインしましたが、ログアウト時にユーザーはブラウザを直接閉じます.ログアウトを保存する方法時間..

私のアプリケーションでは、ユーザーがログアウトボタンをクリックした場合にログアウトボタンを作成しましたが、ユーザーはログアウトボタンをクリックせずにブラウザを直接閉じます。この状況でログを保存する方法-ユーザーのタイムアウト。

助けてください..

4

3 に答える 3

2

私が正しければ、ユーザーがブラウザを閉じたときにスクリプトを実行することはできません。

あなたはセッションに時間を保存することができます:のように

$_SESSION['LAST_REQUEST_TIME'] = time() ;

ユーザーがWebサイトのページを更新するたびに、新しい時刻が設定されます。

また、ユーザーがブラウザを閉じるとセッションが破棄されるため、データベースに時間を節約できます。

于 2013-02-18T11:49:07.987 に答える
1

まず第一に:ユーザーがブラウザーを閉じていることを検出する信頼できる方法はありません(常に実行されているajaxハートビートがない場合)。JavaScriptは、ブラウザのクラッシュやネットワーク接続の喪失などを検出しないため、ほんの少しの助けになります。

とは言うものの、本当に必要なのは、ログインセッションの最後のリクエストのタイムスタンプです。これを取得するのは簡単です。last_seen適切なセッションIDを使用して、すべてのリクエストのタイムスタンプを更新するだけです。

于 2013-02-18T11:50:55.927 に答える