Hmmm... that means that...
PHP Code:
$start_cart = strpos($session_data, 'cart|O');
...is settting $start_cart to false. Now strictly speaking there should be a check for this before using the value of $start_cart, however in theory $start_cart should never end up being false unless something has gone wrong elsewhere. It is possible that PHP 5.2 is serializing the session data differently but that seems unlikely, it could also be that session data has become corrupted.
It might also be the check for PHP version that occurs. It would be worth trying replacing this code...(starting a line 395)
PHP Code:
if (PHP_VERSION < 4) {
$start_id = strpos($session_data, 'customer_id[==]s');
$start_cart = strpos($session_data, 'cart[==]o');
$start_currency = strpos($session_data, 'currency[==]s');
$start_country = strpos($session_data, 'customer_country_id[==]s');
$start_zone = strpos($session_data, 'customer_zone_id[==]s');
} else {
$start_id = strpos($session_data, 'customer_id|s');
$start_cart = strpos($session_data, 'cart|O');
$start_currency = strpos($session_data, 'currency|s');
$start_country = strpos($session_data, 'customer_country_id|s');
$start_zone = strpos($session_data, 'customer_zone_id|s');
}
...with just...
PHP Code:
$start_id = strpos($session_data, 'customer_id|s');
$start_cart = strpos($session_data, 'cart|O');
$start_currency = strpos($session_data, 'currency|s');
$start_country = strpos($session_data, 'customer_country_id|s');
$start_zone = strpos($session_data, 'customer_zone_id|s');
...because the check against PHP_VERSION might be failing and no one uses PHP 3 anymore anyway.
Regards,
Christian.
Bookmarks