[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Время жизни PHPSESSID
beshot
Всем доброго дня!
Делаю session_start(), браузер сохраняет в куках PHPSESSID со сроком действия "пока открыто окно", авторизуюсь. Перезапускаю браузер, PHPSESSID старый и естественно сессия поднимается. Это нормально? Проверял в Хроме, ФФ, Опере везде одинаково. Может кто-нибудь объяснит как должно быть?
inpost
beshot
Абсолютно нормально smile.gif Возможно ты имел ввиду "запомнить меня". Если тебе надо как раз запоминать, то в куки и в БД записывай двусторонний ключ (hash) для автоавторизации. К примеру если у пользователя отсутствует авторизация на сайте, то ты проверяешь наличие ключа (нескольких ключей для безопасности: hash + id + ip), если пользователь существует с такими ключами, то авторизируешь его заново используя эти данные, а не из формы логин-пароль. Сохранять эти данные надо в случае установленной галочки "запомнить" при авторизации на сайте.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
beshot
Нет, мне как раз и не нужно "запомнить меня", хотелось чтобы браузер после закрытия/открытия окна не признавал этого пользователя. Даже если последний не делал завершение сессии намеренно.
И если определяется время действия PHPSESSID "до закрытия окна", то непонятно о чем речь?
ggggg
1. Время жизни куки надо устанавливать в ноль.
2. Браузер надо полностью закрывать, а не окно.
beshot
 
ini_set('session.cookie_lifetime', 0);

об этом речь?
Invis1ble
beshot
какое-то время назад (порядка 1.5-2 лет) в Хроме появилась такая багофича
наверное и в других также сделали, не пользуюсь ими просто

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

beshot
багофича значит, любопытно.
похоже на то, иначе как еще трактовать: "Срок действия истекает: При завершении сеанса браузера".
killer8080
Цитата (Invis1ble @ 21.11.2014 - 08:46)
beshot
какое-то время назад (порядка 1.5-2 лет) в Хроме появилась такая багофича
наверное и в других также сделали, не пользуюсь ими просто

хм а действительно в новых ФФ и Хроме такой баг, только старушка 12-ая опера правильно с куками работает smile.gif
beshot
такая же картина в IE10 и Опера 25, м-да
killer8080
Цитата (beshot @ 21.11.2014 - 15:36)
Опера 25

опера некст - это клон хрома, от оперы там ничего не осталось, потому рассматривать её в контексте самостоятельного браузера нет смысла.
Насчёт осла, не знал, видимо это коллективное помешательство biggrin.gif
vital
Цитата (Invis1ble @ 21.11.2014 - 07:46)
beshot
какое-то время назад (порядка 1.5-2 лет) в Хроме появилась такая багофича
наверное и в других также сделали, не пользуюсь ими просто

Конкретнее какая багофича?
Кука с lifetime 0 - живет вечно?

_____________
"Нужно быть готовым прислушиваться к тем, кто может тебя чему-нибудь научить. Иначе ты никогда не вырастешь."

Откровенно я никому ниразу не нагрубил. А дать подзатыльник зарвавшемуся юнцу, так это и ему на пользу, и мне в удовольствие. © AllesKlar
beshot
Цитата
Конкретнее какая багофича?
Кука с lifetime 0 - живет вечно?

именно, во всяком случае кука установленная без параметров (с параметрами по-умолчанию) живет неопределенно долгое время
Invis1ble
Вы меня удивили. Я-то думал уже все знают об этом помешательстве. Когда-то я тему даже создавал:
http://phpforum.su/index.php?showtopic=63600
Обратите внимание на дату, более 2-х лет прошло.

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

beshot
Понятно, однако вызывает удивление тот факт, что не только WebKit этим болен.
Остается, как я понимаю, определить в коде минимальное время жизни PHPSESSID
inpost
beshot
У браузера есть события "при закрытии". Может стоит его перехватить и грохнуть куки? Ну это как костыль, разве что.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

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