PHP を使用するスクリプトがありますSESSION
。クラスを使用して PHP セッションを管理します。このクラス内には、セッションの有効期限が切れるまでの残り秒数を返すメソッドがあります。
また、ユーザーがページを更新するか、新しいページ (サーバーへの新しい要求) を開くたびに、アイドル時間カウンターが最初からやり直されます$_SESSION['MA_IDLE_TIMEOUT'] = time()+900;
私が探しているのは、PHP セッションが期限切れになる 2 分前にダイアログ メッセージを表示し、ユーザーがまだページにいるかどうかを確認することです。ユーザーが [作業を続行] をクリックすると、jQuery スクリプトは PHP AJAX リクエストを送信してセッションを更新し $_SESSION['MA_IDLE_TIMEOUT'] = time()+900;
ます。ユーザーが何もクリックしなかった場合、または [ログアウト] をクリックした場合、セッションは終了し、ユーザーはログイン ページにリダイレクトされます。
Job jquery-idle-timeoutをいくらか実行する素敵なプラグインを見つけました
このプラグインの問題は、ユーザーが JavaScript を使用してアイドル状態になっているかどうか (キーボード/マウスが使用されている場合) をチェックすることです。このスクリプトが役に立たないシナリオは次のとおりです。PHP セッションに 15 分/900 秒の制限があるとしましょう。ユーザーは同じページで非常に長い記事を読んでいます。彼/彼女はスクロールしますが、「JavaScript の観点からは」実際にはアイドル状態ではありませんが、PHP の観点からは、使用はアイドル状態です。次に、20 分後にユーザーがページを更新すると、900 秒の制限を超えて PHP サーバーに新しい要求を送信していないため、ユーザーはログアウトされます。
どうすればこの問題を解決できますか? トリックを行うためのより良いプラグインはありますか? 私の問題を解決するこのプラグインで見逃したものがある場合は?
ありがとう