Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   JQUERY как убить сессию при закрытиии документа (https://javascript.ru/forum/jquery/4334-jquery-kak-ubit-sessiyu-pri-zakrytiii-dokumenta.html)

Ryo Hazuki 12.07.2009 16:37

JQUERY как убить сессию при закрытиии документа
 
Который час бьюсь над этой проблемой...
Вот мое неработающее решение:
<script type="text/javascript">
document.body.setAttribute("onunload","killSession ()");
function killSession()
{
$.ajax({url:'kill.php',type:'POST',success:functio n(){alert('Success');}});
}
</script>

kill.php - скрипт, в котором собственно и происходит уничтожение сессии

Строчка с аяксом отдельно работает замечательно, а в функции не хочет(

Riim 12.07.2009 17:17

Цитата:

Сообщение от Ryo Hazuki
Строчка с аяксом отдельно работает замечательно, а в функции не хочет(

Пользователь ушел со страницы и никакой функции уже нет.

Ryo Hazuki 12.07.2009 18:23

Цитата:

Сообщение от Riim (Сообщение 24227)
Пользователь ушел со страницы и никакой функции уже нет.

Странно, а если написать так:

<script type="text/javascript">
document.body.setAttribute("onunload","killSession ()");
function killSession()
{
alert('Пока');
}
</script>

то работает

Riim 13.07.2009 04:12

Цитата:

Сообщение от Ryo Hazuki
то работает

Отрабатывает последний обработчик, после него ничего нет.

x-yuri 14.07.2009 08:45

а зачем убивать сессию?
p.s. насколько я помню onunload не работает в опере

Ryo Hazuki 14.07.2009 15:19

Цитата:

Сообщение от x-yuri (Сообщение 24350)
а зачем убивать сессию?
p.s. насколько я помню onunload не работает в опере

да хотел чтобы при закрытии вкладки в браузере сессия сразу убивалась, а так она убивается тока после закрытия браузера. В итоге сделал через куки.

x-yuri 14.07.2009 15:47

забавный диалог:
- Хочу убить сессию
- Зачем?
- Чтобы убить сессию O_o

Riim 14.07.2009 17:20

x-yuri,
например, в чате, человек уходит не нажав "выход", а другие ему что-нибудь пишут зря.

Kolyaj 14.07.2009 18:46

Цитата:

Сообщение от Riim
например, в чате, человек уходит не нажав "выход", а другие ему что-нибудь пишут зря.

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

x-yuri 14.07.2009 18:46

я не говорил, что это не может понадобиться. В твоем случае, думаю, кстати, стоит кнопку "Выход" добавить (ведь не во всех браузерах получится автоматически убить сессию)

но вопрос еще и в том, для чего Ryo Hazuki хочет убить сессию


Часовой пояс GMT +3, время: 11:42.