Существует ли эта сессия?

  • Автор темы Автор темы eps
  • Дата начала Дата начала

eps

Новичок
Существует ли эта сессия?

Перерыл мануалы, юзал поиск, но так и не нашел решения.
Такая ситуация: есть база данных в которую записываются идентификаторы сессий. Соответственно при логауте или при истечении таймаута (юзер не обновлял страницу) идентификатор оттуда удаляется. Вопрос: Как определить закрытие сессии, если юзер закрыл окно браузера? Иначе он будет висеть в "онлайне" до окончания таймаута.
 
> Иначе он будет висеть в "онлайне" до окончания таймаута.
Это плохо?
 
Спасибо. Ясно. Просто хотелось пооперативней выкидывать уже ушедших пользователей из списка "онлайн". В принципе, наверное действительно не стоит на этом заморачиваться.
 
список "онлайн" к количеству активных сессий не имеет ни малейшего отношения.

хочется выкидывать раньше - пожалуйста. кто тебе не даёт?

а в базе сессии хранятся только ради этого списка, как я понимаю?
 
Можно сделать так - написать javascript, который при закрытии окна создает новый объект-картинку, и в него загружает php-скрипт, который собственно и выкидывает сессию из базы. Пользователю это будет прозрачно, но есть и минус - что делать, если например у него открыто два окна браузера с одним и тем же сайтом? когда пользователь закроет одно - его разлогинит.. Так что лучше оставляй отключение по таймауту и все.
 
Сверху