A1ft
A1ft

Reputation: 307

Codeigniter 3 Session not working With PHP 7.1.4

I have an application built with Codeigniter 3 HMVC.The application was working fine on PHP 5.6 version, But after upgrading my PHP version to 7.1.4 I was not able to log in into my application. After a complete checkup I found that session is not setting at all.

I role back to PHP 5.6 and session was working fine again while switching to PHP 7.1.4 bring the "session not working" issue back.

I tried altering some config value like cookie prefix and cookie save name etc, nothing seems to fix it.

Can anyone please help.

Upvotes: 8

Views: 11417

Answers (2)

shillary
shillary

Reputation: 19

In codeigniter 3.1.9 and PHP 7.2 on XAMPP(windows), I checked my application/config/config.php and saw the sess_driver was database:

$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = '165_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = "ci_sessions";

So I created the database ci_sessions with:

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

And it worked.

Upvotes: 0

A1ft
A1ft

Reputation: 307

I found that the issue is with some earlier version of Codeigniter 3 and this is a bug already reported in their website.The underlying session bug has been fixed on:

  • 3.1.2
  • 3.1.3
  • 3.1.4

So in the latest version of Codeigniter 3 this issue doesn't happen.

Solutions:

If you are already in a faulty version codeigniter consider replacing system folder with latest version's one. Version 3.1.6 at the time writing this.

Upvotes: 16

Related Questions