Скрипт, обрабатывающий разрыв сессии

sergee

Guest
Скрипт, обрабатывающий разрыв сессии

У меня при старте сессии создается временная таблица в БД с именем сессии в которую заносятся результаты работы пользователя на странице. По окончании сессии данные из этой таблицы нужно перенести в другую (таблица общих результатов) или просто удалить таблицу при прерывании сессии (т.е. пользователь не завершил все операции). Подскажите, каким образом можно отследить окончание (разрыв) сессии?
 

tony2001

TeaM PHPClub
такого момента не существует по той причине, что протокол HTTP не поддерживает "состояний".
очевидный выход - вести таблицу сессий, периодически её проверять и по таймауту что-то делать.
 

sergee

Guest
Тогда как будет выглядеть проверка сессии на таймаут и каким образом она будет запускаться (на какое-нить условие? Если да то на какое).

-~{}~ 14.01.05 03:22:

Даже проще: как проверить сессию на "состояние"
 

tony2001

TeaM PHPClub
при каждом обращении к сессии - обновлять таймштамп, который хранится где-то.
при определенной разнице (уж сам решишь какой) таймштампа и текущего времени - решаем, что сессия устарела.
 

sergee

Guest
Если честно, то не соображу куда вставить эту проверку. Можно разместить ее на стартовой странице? Т.е. при попытке открыть новую сессию будут проверятся уже созданные, но у которых небыло подтверждения об их завершении. И соответственно лишнее будет удаляться.
 

tony2001

TeaM PHPClub
man cron ?
нет крона - придумай действие, которое выполняется регулярно и совмести с ним проверку.
 
Сверху