Я установил свой веб-сайт codeigniter как веб-приложение, использующее документацию Apple.
https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html
Это работает хорошо, но ни одна из моих сессий не сохраняется, когда они переключаются между приложениями.
$this->session->set_userdata('logged_in', true);
$this->session->set_userdata('id', $data['id']);
$this->session->set_userdata('role_id', $data['role_id']);
Я нашел хорошую статью об этом, но не знаю, как это будет выглядеть при использовании codeigniter.
Поддержка PHP-сессии в веб-приложении для iPhone
Другой подход заключается в использовании базы данных сессий, пожалуйста, включите его в application/config/config.php
от $config['sess_use_database'] = TRUE;
Я в основном использую сеанс базы данных из-за следующего факта:
Примечание: файлы cookie могут содержать только 4 КБ данных, поэтому будьте осторожны, чтобы не превысить
емкость. В частности, процесс шифрования приводит к увеличению
строка данных, чем оригинал, поэтому внимательно следите за тем, сколько данных
вы храните
Продолжить; создание таблицы ci_sessions
CREATE TABLE IF NOT EXISTS `ci_sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(45) DEFAULT '0' NOT NULL,
user_agent varchar(120) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text NOT NULL,
PRIMARY KEY (session_id),
KEY `last_activity_idx` (`last_activity`)
);
И все готово, используйте код, который вы указали в вопросе, сессия сохраняется в базе данных.
Других решений пока нет …