Ошибка сеанса в кодеригере?

когда я хочу установить данные сеанса в codeigniter 3, он говорит об ошибке, например:

A PHP Error was encountered

Severity: Warning

Message: mkdir(): Invalid path

Filename: drivers/Session_files_driver.php

Line Number: 117

Backtrace:

File: C:\xampp\htdocs\ci-test\application\controllers\login.php
Line: 7
Function: __construct

File: C:\xampp\htdocs\ci-test\index.php
Line: 292
Function: require_once

Вот код, где хотите установить данные сеанса.

$sess_array = array(
         'id' => 1,
         'username' => '[email protected]'
       );
$this->session->set_userdata($sess_array);

Ответы

Ответ 1

Разделив решение, которое помогло мне, попробуйте установить свою конфигурационную переменную следующим образом:

$config['sess_save_path'] = sys_get_temp_dir();

Ответ 2

измените ваше приложение- > config- > config.php и установите

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

& Запустить SQL-запрос

CREATE TABLE IF NOT EXISTS `ci_sessions` (
        `id` varchar(40) NOT NULL,
        `ip_address` varchar(45) NOT NULL,
        `timestamp` int(10) unsigned DEFAULT 0 NOT NULL,
        `data` blob NOT NULL,
        PRIMARY KEY (id),
        KEY `ci_sessions_timestamp` (`timestamp`)
);

Ответ 3

Причина, по которой вы столкнулись с ошибкой, состоит в том, что у вас не было $config['sess_save_path']

Перейдите к config.php и установите

$config['sess_save_path'] = NULL;

Ответ 4

В config.php sess_save_path должен быть sys_get_temp_dir();, тогда он разрешит ошибку mkdir(): Invalid path

Ответ 5

Попробуйте это в config.php  $config['sess_save_path'] = NULL