codeigniter中的会话错误?

bik*_* kc 26 php session codeigniter

当我想在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
Run Code Online (Sandbox Code Playgroud)

这是想要设置会话数据的代码.

$sess_array = array(
         'id' => 1,
         'username' => 'bikramkc.kc@gmail.com'
       );
$this->session->set_userdata($sess_array);
Run Code Online (Sandbox Code Playgroud)

Wel*_*ton 151

分享帮助我的解决方案,尝试设置您的配置变量,如:

$config['sess_save_path'] = sys_get_temp_dir();
Run Code Online (Sandbox Code Playgroud)


小智 12

更改您的应用程序 - > 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;
Run Code Online (Sandbox Code Playgroud)

&运行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`)
);
Run Code Online (Sandbox Code Playgroud)


Sat*_*aty 6

您遇到错误的原因是因为您没有 $config['sess_save_path']

去找你config.php并设置

$config['sess_save_path'] = NULL;
Run Code Online (Sandbox Code Playgroud)

  • okk尝试将它设置在路径上,如`$ config ['sess_save_path'] = BASEPATH.'yourfoldername /高速缓存/';` (2认同)

小智 6

在config.php sess_save_path应该是sys_get_temp_dir();它将解决错误mkdir(): Invalid path


Fai*_*sal 6

1.打开application/config文件夹中的config.php

2.一直浏览到该$config['sess_save_path'] = NULL;行。

3.将NULL值更改为BASEPATH.'sessions'