когда я хочу установить данные сеанса в 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' => 'bikramkc.kc@gmail.com' ); $this->session->set_userdata($sess_array);
Разделив решение, которое помогло мне, попробуйте установить свою конфигурационную переменную следующим образом:
$config['sess_save_path'] = sys_get_temp_dir();
измените ваше приложение-> 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`) );
Причина, по которой вы столкнулись с ошибкой, состоит в том, что у вас не было $config['sess_save_path']
Перейдите к вам config.php
и установите
$config['sess_save_path'] = NULL;
В config.php sess_save_path
должно быть sys_get_temp_dir();
то он разрешит ошибку mkdir(): Invalid path
Попробуйте это в config.php $config['sess_save_path'] = NULL