В моем сценарии входа в систему я поставил флажок, чтобы люди могли проверять, хотят ли они оставаться в системе. Я назвал флажок "stayin".
Теперь проблема в том, что, когда пользователь приходит непосредственно к индексу страницы входа в систему, сеанс уже установлен (и он истекает, когда «сессия заканчивается» - или, скорее, когда браузер выключен). Итак, допустим, вы отметили поле «Держать меня в системе», вы просматриваете страницу, а затем выключаете браузер и возвращаетесь назад - вы все равно не войдете в систему, потому что установка времени жизни сеанса не работает, потому что сеанс всегда устанавливается без определенного времени жизни индексным скриптом. Поскольку не все хотят войти в систему все время, я не могу действительно установить истечение срока действия "session_set_cookie_parameters" на "никогда", прежде чем я использую session_start () (именно поэтому session_set_cookie_params используется в моем сценарии ПОСЛЕ session_start () (я я не уверен, что это действительно работает)).
Итак, для индексного скрипта я просто использую session_start (); и проверьте, есть ли значение для «Имя пользователя» и перенаправьте пользователя после входа в систему.
И для сценария действия:
<?php
session_start();
if(isset($_POST['stayin'])){ // In case they want to be kept logged in.
session_set_cookie_params(999999999,"/path");
}
?>
Я использую session_start () в самом верху каждого скрипта.
Использование PHP версии 4.4.9.