here の回答に従いましたが、うまくいきませんでした:
ブラウザを閉じた後でもセッションを維持することは可能ですか?
これが私が試したコードです:
$session_life = 2592000; // 30 days
session_set_cookie_params($session_life);
session_name('my_cart');
session_start();
// update the session_life
setcookie(session_name(),session_id(),time()+$session_life);
これに関する問題は、ブラウザーを閉じるたびに、古いものではなく、新しい session_id を取得することです。
データベースを使用してアイテムを「my_cart」に保存しています。session_id は、ユーザーを識別して自分のカートを表示するために使用されます。
ユーザーのカートを 30 日間維持するための最良の方法は何ですか?
これは私が最終的に得たコードです:
$cart_name = "my_cart";
$cart_life = 2592000; // 30 days
session_start();
if (isset($_COOKIE[$cart_name])) {
session_id($_COOKIE[$cart_name]);
}
setcookie($cart_name, session_id(), time()+$cart_life);