codeigniter でデフォルトのセッション有効期限よりも早く有効期限が切れるセッション データを作成する方法があるかどうか知りたいですか?
たとえば、ショッピング カートは無期限に保存されますが、それ以外はすべて 30 分後に期限切れになります。
難しい方法で行う必要がありますか (手動で削除する必要がありますか)?
ありがとう。
codeigniter でデフォルトのセッション有効期限よりも早く有効期限が切れるセッション データを作成する方法があるかどうか知りたいですか?
たとえば、ショッピング カートは無期限に保存されますが、それ以外はすべて 30 分後に期限切れになります。
難しい方法で行う必要がありますか (手動で削除する必要がありますか)?
ありがとう。
ユーザーのカートは通常、ユーザーのマシンに保管するのが最適です。最新のブラウザーを想定すると、HTML5 を使用localStorage
してユーザーのカート データを保持できます (機密データではないため、問題ありません)。
古いブラウザーをサポートしている場合は、Cookie を使用する必要がありますが、各ユーザーがどのカートを持っているかを記憶するのはサーバーの仕事ではありません。
私の意見では、物事は設計どおりに使用する必要があります。セッションは、ユーザーがページを切り替えるときに一時的に保管することを目的としています。何かを無期限に保存したい場合は、データベースに保存してください。データベースはそのために設計されています。
ユーザーとそのショッピング カードを識別するには、ID を使用して Cookie をユーザーのマシンに保存するか、ユーザーにログインまたは登録させる必要があります。
データベースとログイン メカニズムを使用することで、ユーザーは自分のショッピング カードを別のマシンの別の場所でも取得できます。
ユーザーが自分のショッピング カードを削除し、特定の期間 (3 か月、1 年?) より古いショッピング カードのクリーンアップ メカニズムを使用できるようにします。