代码点火器 iOS Web 应用程序会话未保存


Codeigniter iOS Web App Sessions not saving

我已经使用Apple的文档将我的codeigniter网站设置为一个Web应用程序。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会是什么样子。在 iPhone Web 应用程序上维护 PHP 会话

另一种方法是使用数据库会话,请通过$config['sess_use_database'] = TRUE;application/config/config.php中启用它

由于以下事实,我主要使用数据库会话:

注意:Cookie 只能容纳 4KB 的数据,因此请注意不要超过 容量。特别是加密过程会产生更长的时间 数据字符串比原始字符串,因此请仔细跟踪多少数据 你正在存储。

继续;创建表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`)
);

很好,使用你提供的代码,会话保存在数据库中。