codeigniter теряет сессию из-за перенаправления, есть ли способ восстановить его? - PullRequest
0 голосов
/ 07 ноября 2011

У меня есть форма, в которой, помимо прочего, есть кнопка предварительного просмотра и кнопка отправки. Допустим, форма содержит данные человека. При щелчке на превью форма будет отправлена ​​на example.com / preview , и она откроется на новой вкладке. Контроллер предварительного просмотра вставит данные человека в таблицу и, основываясь на значении LAST_INSERT_ID (), будет перенаправлен на example.com / person / ID . Когда происходит перенаправление, все данные сеанса теряются. Я хочу иметь возможность сохранять данные сеанса, чтобы после проверки страницы example.com / person / ID пользователь администратора мог закрыть ее и внести некоторые изменения в форму или отправить ее.

Я заметил, что сохранение идентификатора сеанса в элементе flashdata не будет работать, оно не пройдет перенаправление. Кроме того, если мне каким-то образом удается получить session_id после перенаправления (хотя добавление его в URL-адрес не является тем, что хочет мой клиент), я все равно не знаю, как создать сессию Codeigniter с его помощью. Еще одна опция, которую я изучил, - это использование класса Codeigniter Native Session, но найденная на сайте версия не для Codeigniter 2.0.0.3, и я боюсь, что ее использование может что-то сломать.

Любой совет очень ценится.

1 Ответ

0 голосов
/ 09 ноября 2011

Решением было изменить сопоставления полей таблицы базы данных ci_sessions на utf8_general_ci (по умолчанию было latin1_swedish_ci)

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