Авторизация и "запомнить меня"

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 14 октября 2012 в 17:38
Подскажите плиз где(в каком файле) проходит проверка при входе на сайт на iCMS о том, что пользователь авторизован, есть ли у него куки, и его сессию?
#2 14 октября 2012 в 18:45
Проверка идет в файле /index.php. Строка 63
  1. $inUser->autoLogin();
проверяет куки и авторизует
В строке 66
  1. if (!$inUser->update() && !$_SERVER['REQUEST_URI']!=='/logout') { $inCore->halt(); }
Используется метод $inUser->update(), который и проверяет наличие сессионной переменной $_SESSION['user']['id'] и авторизует.
#3 14 октября 2012 в 18:49
А сессия сколько хранится? Время как то регулируется?
----
Я это к тому, что если юзверь не поставил галочку "запомнить меня", то сессия убивается через некоторое время (какое?), а если поставил, то через куки сессия восстанавливается? или она не убивается?
#4 14 октября 2012 в 19:07

А сессия сколько хранится? Время как то регулируется?

kreator
Регулируется в php.ini параметрами
session.gc_maxlifetime = 10800
session.cookie_lifetime = 10800
Цифры — время в секундах.
Или в .htaccess
php_value session.gc_maxlifetime 10800
php_value session.cookie_lifetime 10800
Или в файле index.php перед строкой 34
вставить
В примерах 10800с = 3 часа.
Это был и ответ на

Я это к тому, что если юзверь не поставил галочку "запомнить меня", то сессия убивается через некоторое время (какое?)

kreator
Без разницы. Даже если галочку поставил, всё равно сессия убивается через установленное настройками php время.
Если поставил галочку, то в комп. юзера устанавливаются куки(не сессионные) и при следующем визите, если куки обнаружены, происходит авторизация(сессия создается по новой). Время жизни этих кукисов устанавливается в ядре движка. Не помню строку, если нужно поищу. Насколько помню, несколько месяцев.
#5 14 октября 2012 в 19:09
Давно получал столь исчерпывающий ответ. Большое вам спасибо и +
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.