【问题标题】:Unable to locate Codeigniter DB Session library?无法找到 Codeigniter 数据库会话库?
【发布时间】:2015-06-01 19:55:23
【问题描述】:

我不确定是否有人对 Codeigniter 的 Db Session 库有任何经验,但我一直在互联网上寻找下载链接,但似乎找不到。在 wiki 页面上有一个链接,但是当您转到该链接时,它会将您带到标准 Codeigniter wiki。

谁有这个文件可以分享或者告诉我从哪里得到它?

https://github.com/EllisLab/CodeIgniter/wiki/DB-Session

【问题讨论】:

  • 阅读 CI Session Class 文档,它是内置的
  • 我以为 Codeigniter 没有内置数据库会话?但是非常感谢!

标签: php codeigniter session


【解决方案1】:

要将数据库用于会话数据,它内置在 CodeIgniter 中。

首先,创建一个表来保存会话数据: http://ellislab.com/codeigniter/user-guide/libraries/sessions.html

这是上面链接中的 SQL,供您参考:

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`)
);

接下来,在 application/config/config.php 文件中,查找以下 sess_use_database 配置变量并确保它设置为“TRUE”,并确保 sess_table_name 设置为 ci_sessions(或者,如果您正在使用不同的表名,请改用该名称)

$config['sess_use_database']    = TRUE;
$config['sess_table_name']      = 'ci_sessions';

完成所有设置后,您将使用数据库来存储会话,而无需安装任何额外的库。

【讨论】:

    【解决方案2】:

    我认为您正在寻找的图书馆现在在:

    https://github.com/bcit-ci/CodeIgniter/wiki/DB2-Session

    为什么要使用它而不是 Codeignitor 会话库的 DB 支持(如 DB-session 库 Git 页面中所述):

    Code Igniter 捆绑了一个会话类,使用 cookie。不幸的是,此类将会话数据直接存储在 cookie 中,从而允许客户端查看和编辑这些数据。这是一个在数据库中存储数据的替换类。

    【讨论】:

      猜你喜欢
      • 2011-01-05
      • 2016-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-11
      • 2019-06-09
      • 2015-09-30
      相关资源
      最近更新 更多