Я спасаю выбор языка пользователя в сессии, как это:Как сохранить язык пользователя
$this->session->set_userdata('language', $language);
И тогда я устанавливаю язык в зависимости от данных сеанса (и делает английский язык, как язык по умолчанию).
if (!$language = $CI->session->userdata('language'))
{
$language = "english";
}
$CI->config->set_item('language', $language);
Работает хорошо, но язык, на котором пользователь работает, длится всего около ок. 2 часа - тогда пользователь должен снова выбрать язык. Поэтому вопрос заключается в том, как продлить время сеанса до истечения срока действия (или заставить его истекать только в том случае, если пользователь очистит данные браузера). Я не могу сохранить выбор пользователя в базе данных, потому что мне нужно также обрабатывать гостей на моем сайте.
Я знаю, что могу продлить время сеанса в конфигурации CI, но я просто хочу, чтобы это произошло только в случае выбора языка, а не для сеансов учетных записей.
Я тоже думал о печеньях, но не был уверен, что это хорошо для этой цели. Кажется, это единственный путь сейчас. – Cyclone
Ну, вы также можете реализовать всю вторичную сессию самостоятельно, но мне кажется, что это слишком много. Печенье хорошо подходит для этой цели. – lanzz
Хорошо, спасибо за вашу помощь :-). – Cyclone