Can't Access Admin Panel Or Cart

When trying to access my admin panel and when my customer tries to access the online login portal we are both getting the below errors - I cannot access my admin panel at all PLEASE HELP

Warning: session_start(): Session callback expects true/false return value in /home4/truetype/public_html/ubstampa/products/core/class.session.php on line 271

Fatal error: session_start(): Failed to initialize storage module: user (path: /tmp) in /home4/truetype/public_html/ubstampa/products/core/class.session.php on line 271

Ask your host if your PHP version has changed

/ubstampa/products/core/class.session.php is not a standard cs-cart file.

/ubstampa/products/core/class.session.php is not a standard cs-cart file.

It is for V2

I'm having some problems since yesterday. Mostly the site works, but sometimes I get a php error that logs me out and then I can get back in. Any ideas? No change was made recently, although I did upgrade php software about a month ago.

Message

Undefined index: settings

Error at

app/Tygh/Session.php, line: 257

Suggest you logout, clear your browser cache and go for it again.

Seems that the saved data in your session is not including your site settings for how long a session should be active.

I will try that. Thank you

Well, it didn't really seem to solve anything. It goes away for a while and seems fine, then it comes back again. The front end of the site is doing it too as of this morning with the same error. This happens to others and not just me, so a log out and cache clearing seems an unlikely fix.

Message

Undefined index: settings

Error at

app/Tygh/Session.php, line: 257

What is SESSION_ALIVE_TIME defined as in your config.php?

It should look like:

// Session live time
define('SESSION_ALIVE_TIME', SECONDS_IN_HOUR * 2); // 2 hours

It's identical to what you wrote

Then I don't know. You could add the following code in Session.php just above the db_query() statement:

if( !isset($sess_data['settings']) ) {
  $msg = sprintf("[%s] session_data:%s", date("m/d/Y H:i:s", TIME), empty($sess_data) ? "NOT SET" : print_r($sess_data,true) );
  if( empty($sess_data)&& !empty($session) )
  $msg .= ", Unserialize seems to have failed.";
  file_put_contents("debug.log", $msg."\n", FILE_APPEND);
}

Thanks a lot for your help. I am trying this suggestion. I'll check back tomorrow and let you know how it went.

Robert

Okay, be sure to include at least one of the entries from the log file that's created.

ok, I don't think that actually helped. I'm still getting the problem. Here is the log that was just created after I removed that bit of code. It's pretty large.

error log text.txt

Well, that seems to indicate that you have a problem with the underlying PHP session_decode(). What version of php are you running?

It would also appear that something is in a loop where it shouldn't be. That code should only be executed when the session has expired.

A loop of some kind is what I was thinking.

Was running 5.6, but today after problems went down to 5.4

I don't think 4.8.2SP2 supports php 5.4. I'd suggest you convert to 7.1 or 7.2 and see if your problem persists.

Note that your signature indicates you're on 4.2.3. You might want to update it.

yeah, I'm actually on 4.82.

I will try that, although I upgraded the php at least a month ago and it's been working great until yesterday.

Thank you