آزاد سازی session بعد از مدت مشخص - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

آزاد سازی session بعد از مدت مشخص

+1 امتیاز
اگر قرار باشه یک session  به مدت 2 ساعت حفظ شه وبعد از بین بره چیکار انجام بدم
سوال شده بهمن 18, 1392  بوسیله ی mobin (امتیاز 13)   1 1

1 پاسخ

+2 امتیاز
 
بهترین پاسخ

برای اینکار باید متغیری رو توی سشن یا دیتابیس درنظر بگیرید که زمان Expire رو اونجا نگه دارید. زمان Expire هم که همون زمان فعلی(معمولا آخرین فعالیت کاربر) + دو ساعت هستش:

$_SESSION['expire'] = time() + (2 * 60 * 60);

حالا برای اینکه ببینیم زمان دو ساعت گذشته یا نه:

if(time() > $_SESSION['expire'])
{
	unset($_SESSION);
	session_destroy();
}

* تابع time در زبان php یک عدد که معرف ثانیه های گذشته از یک ژانویه 1970(استاندارد Unix Timestamp) است رو برمیگردونه. ما این عدد رو به اضافه ی 2 * 60 * 60 یعنی دو ساعت به ثانیه کردیم تا بفهمیم وقت سشن گذشته یا نه

پاسخ داده شده بهمن 18, 1392 بوسیله ی dousti91 (امتیاز 405)   1 2 9
انتخاب شد بهمن 18, 1392 بوسیله ی مصطفی ساتکی
...