3

我的配置文件看起来像这样->

$config['sess_cookie_name']     = 'ci_session';
$config['sess_expiration']      = 7200;
$config['sess_expire_on_close'] = TRUE;
$config['sess_encrypt_cookie']  = FALSE;
$config['sess_use_database']    = FALSE;
$config['sess_table_name']      = 'ci_sessions';
$config['sess_match_ip']        = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update']  = 300;

自动加载是->

$autoload['libraries'] = array('database','session','uri');

我收到错误消息:

Unable to load the requested class: session

请告诉我实际的问题是什么。我已经搜索了所有与此相关的先前问题,但还无法解决问题。提前致谢 。

4

6 回答 6

5

设置你的 config.php 文件

$config['encryption_key'] = 'xyz'
于 2012-11-03T07:55:33.460 回答
4

Your autoload is OK. It doesn't matter if you write it with cap letters or with not capitals.

At config put some random key at

$config['encryption_key']

2nd Check your folders permissions.

Tell us which version of CI you are using :)

Currently there are 2 possible reasons .. 1st is that for some reason your CI can't find session class, and second is if its try to load it more than once..

于 2012-11-03T06:43:04.003 回答
0

您可能多次尝试加载 Session 类。检查您的代码是否有重复会话的负载。它将解决您的问题!还要确保将 Session 类作为库而不是作为驱动程序加载。

于 2013-01-04T15:45:26.037 回答
0

尝试 :

$this->load->library('Session');

代替

$this->load->driver('Session');
于 2014-12-29T12:00:57.277 回答
0

我有这个问题,问题出在会话脚本所在的系统文件夹中。您需要将 Session 文件移到结构树上一层(文件从System/libraries/sessionSystem/libraries)。我知道更改系统的文件和结构是不好的做法,但这是唯一的解决方案。

于 2016-03-13T19:43:20.313 回答
-1

可能是以下原因抛出此消息Unable to load the requested class - encrypt

1)在新服务器上,您的 lib 文件名如何更改。所以 CI 无法找到该文件

2) 可能给定 lib 文件在服务器上不存在。所以 CI 无法找到该文件

3) 可能是文件名大小写的问题。

首先检查 system/application/libraries/Session.php 是否可执行。如果这不起作用,请尝试更改自动加载中的行:

$autoload['libraries'] = array('database', 'session','uri');

$autoload['libraries'] = array('database', 'Session','uri');

并尝试

$config['encryption_key'] = 'abc1234';

于 2012-11-03T06:32:14.233 回答