закрытие сессии при закрытии браузера

Статус
В этой теме нельзя размещать новые ответы.

B1rdEX

Постоялец
Регистрация
30 Июн 2008
Сообщения
141
Реакции
31
Необходимо выполнить запрос в бд и закрыть сессию при закрытии окна. Возможно ли?

Уже попробывал даже на яваскрипте, но получается фигня -- попап не сделаешь (блочится браузерами), аякс тоже не проканает (окно закрылось -- стоп скриптам).. Вопрос, как же?..

Уже подумываю создавать сессии на 5 минут, а при активности -- продлевать, но это уже не то..

Прошу помощи.


Так как не хватает постов, пишу в разделе для новичков (коим не являюсь) :D
 
зашёл недавно на сайт, так по закрытии он выполнил свой javascript (с просьбой остаться). firefox это дело не пресёк. так что если поискать, думаю, такой скрипт можно будет найти.

но для запроса к сайту нужно время. а затягивать закрытие окна — не дело. так что задача, по-моему, невыполнимая.
 
Правильно ли я понял вопрос: нужно послать запрос к БД, который выполняется продолжительное время, и завершить его (запрос, скрипт) не при закрытии окна браузера, когда хочет пользователь, а когда захочет скрипт. Или нужно просто закрыть сессию браузера при закрытии окна?
Уточните, пожалуйста.
 
2bliss. хз, но это работает только в ИЕ (я про эвент beforeunload), в фф окно закрывается.

2gregzem. второе, выполнить запрос в бд при закрытии окна браузера.

Продолжаю ждать мыслей, хотя уже реализовал по-другому. Но, всё-же, может можно через яваскрипт? )
 
И как же реализовал?
 
Отслеживаю активность и каждые 5 минут кроном сношу неактивные сессии..
 
может так?:
при инициализации сессии, отправь куки, которые удалятся при закрытии браузера
PHP:
setcookie("started", "dada")
и отправь запрос
PHP:
if (!$_COOKIE['started'])
    session_destroy();
может прохляет
 
может так?:
при инициализации сессии, отправь куки, которые удалятся при закрытии браузера
PHP:
setcookie("started", "dada")
и отправь запрос
PHP:
if (!$_COOKIE['started'])
    session_destroy();
может прохляет
Дык если окно браузера закрыто, и страница не генерится, то когда код
PHP:
if (!$_COOKIE['started'])
    session_destroy();
выполняться то будет? ;)

имхо - крон или просто удаление скриптом where TS < NOW = лучшее решение.
 
Для чего такие танцы с бубном, если сессия и так сама убивается при закрытии браузера?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху