Сессия CodeIgniter не сохранена - PullRequest
0 голосов
/ 02 сентября 2011

У меня есть пример контроллера по тесту.

В методе index я сделаю сеанс, он успешно сохранится в базе данных, но когда я захочу прочитать их другим способом, он сделает другой сеанс в базе данных. Например:

public function index(){
     $this->session->set_userdata('test','test');
}
public function test(){
     echo $this->session->userdata('test');
}

Это ничего не даст. И когда я проверяю базу данных, она делает новую строку.

Ответы [ 2 ]

1 голос
/ 02 сентября 2011

В других местах (например, здесь ) я видел, что у Codeigniter есть проблемы с файлами cookie на localhost, и это вызовет проблемы, которые вы описываете, потому что, если файл cookie недействителен, Codeigniter не сможет распознать сессию и собрать эту информацию из базы данных. Чтобы проверить эту гипотезу, вы можете загрузить свое приложение на реальный сервер и попробовать его там.

0 голосов
/ 30 июля 2013

У меня возникла похожая проблема, и я обнаружил, что в библиотеке сеансов системы возникли проблемы с установкой файла cookie, как это выглядит

setcookie(
                $this->sess_cookie_name,
                $cookie_data,
                $expire,
                $this->cookie_path,
                $this->cookie_domain,
                $this->cookie_secure
            );

Я просто переписал это с

setcookie(
                $this->sess_cookie_name,
                $cookie_data,
                $expire,
                $this->cookie_path,
                $this->cookie_secure
            );

и все заработало

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...