У меня возникают странные проблемы с переменными SESSION в моей онлайн-корзине PHP/Ajax.
Когда я впервые просматриваю страницу, СЕССИЯ создается и работает на странице. Затем, когда я перехожу на другую страницу PHP в том же каталоге, СЕССИЯ полностью теряется. Странно то, что это происходит только один раз. Как только пользователь проходит через этот процесс полной потери СЕССИИ при смене страницы, СЕССИЯ работает в полном объеме по всей корзине.
Я начал рассылать себе var_exports данных $_SESSION и $_SERVER при каждом просмотре страницы. Кажется, что при первом просмотре страницы СЕССИЯ существует и содержит данные. Однако в переменной $_SERVER['HTTP_COOKIE'] не создается PHPSESSID. При переходе на другую страницу создается PHPSESSID, и SESSION начинает работать, но исходные данные SESSION первого просмотра страницы теряются.
Есть ли способ сгенерировать PHPSESSID, если он еще не был сгенерирован для SESSION? Или это типичное поведение и не имеет отношения к моей случайной проблеме потери СЕССИИ? Я использую PHP 5.2.
Каждая страница в корзине начинается одинаково:
$title="Title";
$keywords="keywords";
$description="description";
@include('../header_cart.php');
А потом вверху header_cart.php есть:
session_start();
if(!isset($_SESSION['active'])){
$_SESSION['active']=$_SERVER['REMOTE_ADDR'];
}