Не удалось загрузить запрошенный класс: Session Codeigniter 3

Попытка загрузить библиотеку сеансов в Codeigniter. Кажется, что это правильно, но действенно не работает. Вот часть файла конфигурации:

$config['sess_driver'] = 'database'; $config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 7200; $config['sess_save_path'] = NULL; $config['sess_match_ip'] = FALSE; $config['sess_time_to_update'] = 300; 

Кроме того, ключевая переменная ncryption уже установлена. Более того, документация CI 3 не может дать мне способ решить эту проблему.


Я попытался:

  1. Установите переменную 'sess_save_path' в 'ci_sessions'
  2. Проверка прав доступа к папкам
  3. Проверьте, существует ли таблица ci_sessions
  4. Использовать класс Autoloader
  5. Использовать имя класса с капиталом S

Странно, но config говорит:

  /* | ------------------------------------------------------------------- | Auto-load Libraries | ------------------------------------------------------------------- | These are the classes located in the system/www folder | or in your application/www folder. | | Prototype: | | $autoload['www'] = array('database', 'email', 'session'); | | You can also supply an alternative library name to be assigned | in the controller: | | $autoload['www'] = array('user_agent' => 'ua'); */ 

И вот код автозагрузчика:

 // Load www if (isset($autoload['www']) && count($autoload['www']) > 0) { // Load the database driver. if (in_array('database', $autoload['www'])) { $this->database(); $autoload['www'] = array_diff($autoload['www'], array('database')); } // Load all other www foreach ($autoload['www'] as $item) { $this->library($item); } } 

Вот список того, что вы должны попробовать:

  1. Убедитесь, что вы загружаете библиотеку сеансов в autload.php: $autoload['libraries'] = array('session'); autoload $autoload['libraries'] = array('session');

  2. Убедитесь, что ваш ключ шифрования установлен в файле cofing.php: $config['encryption_key'] = 'anything_here'

  3. Убедитесь, что таблица базы данных называется ci_sessions а ваш sess_save_path установлен на это имя: $config['sess_save_path'] = "ci_sessions"

  4. Если вы работаете в Unix / Linux, обязательно загрузите библиотеку заглавными буквами: $autoload['libraries'] = array('Session');

  5. Если ничего не работает, убедитесь, что вы загружаете и устанавливаете правильные файлы CI3 с http://www.codeigniter.com/download

Вы должны это сделать

config/autoload.php и убедитесь, что у вас есть это, чтобы загрузить сеанс в Code Igniter 3.

 $autoload['drivers'] = array('session'); 

Убедитесь, что ci3 установлен правильно, и ни один из файлов и классов библиотеки отсутствует. Мне нравится использовать git или composer при установке ci для отслеживания изменений, или вы можете получить zip или .gz и извлечь его для использования.