![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: нет Всего: 64 |
Всем привет!
Как сервер РНР узнаёт, что страницу открыл тот, для кого уже создана сессия? По IP? Как сделать,, чтобы сессия завершалась после закрытия страницы (не браузера)? Как сделать, чтобы при окончании сессии выполнялся определённый скрипт? -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
| ViniPuh |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 24.8.2007 Репутация: 1 Всего: 1 |
Скорее всего не только по IP, но и по агенту браузера и чему то еще (иначе бы переоткрытие браузеро не уничтожало бы сессию)
Я вижу только один вариант JS+Ajax во время закрытия страницы и на PHP по этому запросу сессию прибить.
Тебе нужно правильно заюзать функу session_set_save_handler и навесить свою функу на параметр destroy. После этого с сессией можно работать как обычно. |
||||||
|
|||||||
| teroni |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 15.5.2007 Где: Днепропетровск Репутация: 8 Всего: 22 |
При старте сессии сервер, на котором установлен твой скрипт, выдаёт браузеру клиента куку, в которой хранится идентификатор сессии. После этого браузер каждый следующий запрос шлет серверу эту куку. При закрытии окна браузера кука удаляется. IP не играет никакой роли, можно зайти под одним, получить идентификатор сессии, сменить проксю не закрывая браузер, и сессия не разрушится.
Сервер понятия не имеет, когда юзер закрывает страницу браузера. Но он может разрушать сессию при заходе на какую-то страницу с помощью session_destroy. |
|||
|
||||
| Dima 2015 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 16.3.2008 Где: SPb Репутация: 2 Всего: 2 |
teroni, если ИД сессии пишется в куку, то может ли быть сделано так, чтобы эта кука удалялась при закрытии браузера?
|
|||
|
||||
| artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: нет Всего: 64 |
Всем спасибо.
Dima 2015, она удалится автоматически. -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
artsb, не обязательно удалится автоматически. зависит от параметра session.cookie_lifetime в php.ini
|
|||
|
||||
| Dima 2015 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 16.3.2008 Где: SPb Репутация: 2 Всего: 2 |
skyboy, во! Вот и я заметил что иногда выкладываешь на сервак и меняется поведение при закрытии браузера, так и думал что от настроек сервака зависит.
|
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |