मैं यहाँ से जवाब का पालन किया है, लेकिन यह मेरे लिए काम नहीं किया:PHP में ब्राउज़र बंद होने के बाद सत्र को कैसे खोलें?
$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);
इस के साथ समस्या यह है कि हर बार जब ब्राउज़र है:
Is possible to keep session even after the browser is closed?
यहाँ कोड मैंने कोशिश की है बंद मैं अभी भी एक नया 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);
शायद यह एक है द्वारा एक मानक मूल्य (20:00) होने के लिए सेट कर सकते हैं: यह करने के लिए काफी आसान है कुकीज़ के लिए नौकरी और सत्र नहीं। – mawburn
आपका सत्र सर्वर पर भी समाप्त हो सकता है। PHP पैरामीटर [session.gc_maxlifetime] (http://php.net/manual/en/session.configuration.php#ini.session.gc-maxlifetime) अधिकतम समय को परिभाषित करता है कि सत्र जानकारी को कचरा होने से पहले रखा जाता है एकत्र किया हुआ। –