Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Запись сессии в БД


Автор: nextzi0 9.4.2010, 11:31
У меня для показа онлайн пользователей в системе сессия каждого пользователя записывается в БД (при успешном логине), и удаляется в следующих случаях:
1. Пользователь нажал кнопку выход
2. Пользователь запросил ссылку, но исткекло время сессии
Но бывает что юзеры просто закрывают браузеры и соот-но сессия остается в БД. Как сделать так, чтобы она автоматом удалялась при истечении срока жизни сессии, как то можно это организовать?

Автор: MoLeX 9.4.2010, 11:50
крон

Автор: Sanchezzz 9.4.2010, 12:49
делать запрос если сесии в бд больше часа чистить в крон я думаю будет лишним.

Автор: nextzi0 9.4.2010, 12:55
Цитата(Sanchezzz @ 9.4.2010,  12:49)
делать запрос если сесии в бд больше часа чистить в крон я думаю будет лишним.

Чистить тоже придется с помощью крона. Зачем делать двойную работу? Попробую

Автор: Photon 9.4.2010, 23:04
Если посещаемость не очень большая, то можно удалять старые сессии при входе любого пользователя например.

Цитата(nextzi0 @  9.4.2010,  12:31 Найти цитируемый пост)
2. Пользователь запросил ссылку, но исткекло время сессии


Вот это, кстати, совершенно непонятно..  Тут надо наоборот данные в базе обновлять, устанавливая новое время начала сессии..  Пользователь-то никуда с сайта не уходил, раз сессия жива (как минимум не закрывал браузер).

Автор: NewDima 12.4.2010, 06:41
http://habrahabr.ru/blogs/php/78774/

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)