[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Почему-то не уничтожается сессия при закрытии брау
Tihondrius
Здратсвуйте!

У меня такая проблема - когда я писал скрипт на собственной связке, все было норм, но когда я перенес его на ДЕНВЕР, то тут почему-то при закрытии браузера не разрушаются сессии... например, заходил на страницу index.php?log_in=1...
Все отображалось... Однако когда закрыл, и вновь перешел на index.php, (а в скрипте у меня стоит условие :

if(!isset($_SESSION['login'])) {
if(!isset($_POST['login'])&&!isset($_POST['pass'])) {
if(!isset($_POST['register'])) {
sleep(1);
echo "<script type=\"text/javascript\">document.location.href=\"reg_page.php\";</script>";
}
}
}


, т.е. , скрипт выкидывает на страницу регистрации, если не соблюдены 3 условия)
то браузер показал пустоту... Стоило мне дописать в адресную строку ?log_in=1, как браузер мне выдал главную страницу юзера, на который я заходил в предыдущий раз... Выходит дело, предыдущая сессия не разрушилась при закрытии, то есть $_SESSION['login'] имел место быть...

Кто может подсказать мне, что это и как с этим бороться?



Спустя 2 часа, 37 минут, 20 секунд (17.01.2010 - 18:39) Ice написал(а):
время жизни сессии в php.ini смотрели?

Спустя 20 секунд (17.01.2010 - 18:40) ИНСИ написал(а):
Tihondrius при закрытии брайзера, все сессии уничтожаются автоматически. Изменить это никак нельзя sad.gif в отличии от "куки".

Спустя 2 часа, 36 минут, 4 секунды (17.01.2010 - 21:16) Tihondrius написал(а):
Ice, смотрел, 1440...


welbox2, так вот в том то и дело, что тока при закрытии ИЕ и оперы уничтожаются, а при закрытии Мозилы и нетскейпа - НЕ уничтожаются, а продолжают жить свой макслайф...

Спустя 11 минут, 23 секунды (17.01.2010 - 21:27) Ice написал(а):
а это 24 минуты. Попробуйте поставить в ноль

Спустя 43 секунды (17.01.2010 - 21:28) Tihondrius написал(а):
Ice, понятно, спс, попробую)

Спустя 50 минут, 11 секунд (17.01.2010 - 22:18) grigoriyi написал(а):
чтото не работает с нулем

Спустя 21 час, 6 минут, 45 секунд (18.01.2010 - 19:25) Tihondrius написал(а):
Неа с нулем не работает, по крайней мере в Мозилле...

Спустя 12 минут, 59 секунд (18.01.2010 - 19:38) VolCh написал(а):
Кто сказал, что сессия (в смысле $_SESSION) должна разрушаться при закрытии браузера?

Спустя 10 минут, 20 секунд (18.01.2010 - 19:48) Tihondrius написал(а):
Ну... хотелось бы) а как мож с помощью яваскрипта такое можно зделать?

Спустя 3 минуты, 26 секунд (18.01.2010 - 19:52) VolCh написал(а):
Изменять время жизни сессионной куки на 0?

Спустя 1 минута, 40 секунд (18.01.2010 - 19:53) Tihondrius написал(а):
нет... я уже это изменил... все равно в мозилле не работает... хочется чтоб при закрытии браузера сессия и все ее переменные полностью уничтожались...
такое как-то можно зделать?

Спустя 11 минут, 54 секунды (18.01.2010 - 20:05) VolCh написал(а):
Tihondrius
Сервер никак не может знать, что бразуер закрылся (особенно в случае аварийного завершения). Всё, что ты можешь, имхо - на стороне браузера химичить, чтобы браузер при старте не сообщал серверу о том, что у него (браузера) была незакрытая сессия. Я вижу два пути - или использовать куки со временем жизни 0 (не будет работать в случае, если сессия не в куках работает), или ставить JS обработчики на события типа onClose или onUnload (не будет работать при отключенных JS, да и вообще не уверен), вызывающие скрипты, разрушающую сессию на сервере.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.