1

ユーザーが 5 分間アイドル状態だった場合、PHP Web サイトでユーザー セッションを破棄させたいと考えています。これが発生した場合は、ログアウトした理由を示すメッセージをユーザーに表示し、ログイン ページにリダイレクトしたいと考えています。

これを処理する最善の方法は何ですか?

私はphpとmyadminで実行しています。

ありがとう

アビナッシュ

4

4 に答える 4

7

ページをロードするたびに、タイムスタンプをセッション変数に格納します。ユーザーがページに移動したら、を確認します$SESSION['lastActivity'] < time() - <your idle time>。trueの場合、「セッションの有効期限が切れました」ページなどにリダイレクトします。そうでない場合は、ページの読み込みを続行します。

于 2010-01-27T08:27:48.477 に答える
1

「アイドル」時間を意味していると思います。それを計算する必要はありませんが、そのユーザーが行った最後の (認証された) アクセスを保存し、カウンターをリセットする必要があります。通常、特定のタイムスタンプを持つ認証 Cookie を発行する必要があります。Cookie の認証時に、現在の時刻とタイムスタンプを比較します。この差が 5 分などのしきい値よりも大きい場合は、エラー ページが表示されます。ユーザー エクスペリエンスを向上させるために、ユーザーにタイマーを表示して、不意を突かれないようにすることもできます。

于 2010-01-27T08:32:40.657 に答える
1

PHP の組み込みセッション関数を使用して、セッションの有効期限を 5 分に設定することはできませんか? セッションが存在しなくなった場合にリダイレクトしますか?

于 2010-01-27T09:57:04.720 に答える
0

ポップアップしてリダイレクトする ax 分タイムアウトを持つ JavaScript 関数を作成します。

また、サーバー上でセッションの有効期限が切れていることを確認してください。これにより、Javascript が利用できない場合、アイドル時間が経過した後にアクションを続行できなくなります。

于 2010-01-27T09:20:06.827 に答える