-2

特定のユーザーのセッションを削除する必要があります (彼が禁止されたとき)。session_id が 5 分ごとに再生成されることはわかっています。セッションをデータベースに保存するのではなく、おそらく各ユーザーの session_id だけです。session_id が変更されるたびに db を更新する必要がありますか、それともより良い解決策がありますか?

編集:セッションをデータベースに保存し、各セッションに my_session_id を追加することが解決策になると思います。次に、この変数によって必要なセッションを見つけることができました。このソリューションにコメントしてください。セッションをデータベースに保存しないものもありますか?

4

1 に答える 1

1

可能であれば、session_id をユーザー テーブルに保存することをお勧めします。それ以外の場合は、session_ids を別のテーブルのユーザー ID にマップします。

利点

  1. ユーザーがログインするときに、有効なセッション ID とユーザー ID を確認し、アクティブなユーザーであることが判明した場合は、ログイン ページにリダイレクトすることを許可します。
  2. ログアウトすると、セッション ID をクリアまたは破棄できます。
  3. ユーザーとセッション ID を検証するための共通関数を作成します。
  4. ヘルパーからこの共通関数を呼び出します。天候に関係なく、検証された場合はメソッドが呼び出され、そうでない場合はログインにリダイレクトされます。

- オンラインのホテル予約に取り組んでいたときに、現在のホテルの空室状況についてサーバーにアクセスするたびに、ライブ価格、部屋などのライブデータを返すために使用していたときに、これを経験しました。ログアウトすると、検索はデータベースから削除されます。

于 2013-05-17T10:23:10.687 に答える