Struktura systemu, z ktorym mam problem wyglada tak
index.php
<?php include "initialize.php" if ($session_id) { $orderMasterId = generateOrder($session_id); $orderMaster = new OrderMaster($orderMasterId); } ?>
Dalej nastepuje switch, ktory odpala funkcje lub includuje plik zaleznie od parametru 'action' w url... od tego momentu kod nie jest istotny.
Zawartosc initialize.php to
<?php $session_id = $_COOKIE["session_id"]; if (!$session_id ) { $session_id = getRandomString(32); } ?>
gdzie getRandomString generuje po prostu ciag znakow, ktory jest identyfikatorem sesji
Wiec, przy kazdym odswiezeniu strony, system 'przechodzi' przez index.php. Sprawdzany jest identyfikator sesji. Jesli go nie ma (np strona zostala odpalona pierwszy raz po otworzeniu okna przegladarki) tworzy nowy id. Jesli ten id juz istnieje, to nie tworzy nowego i bazuje na istniejacym - tworzy klase orderMaster optrzebna potem do dzialania sklepu (koszyk itp.)
Problem polega na tym, ze czasem po wyczyszczeniu cache i cookies (a w IE temp int files i cookies) lub po zamknieciu i otworzeniu nowego okna przegladarki, ten indetyfikator sesji wariuje i przy kazdym odswiezeniu zmienia sie na nowy, albo (co dziwniejsze) nastepuje rotacja istniejacych id (np przechodze do strony 1, mam id XXX. Strona 2 - id YYY. Strona 3 - id CCC. Powrot do strony 1 - id znow XXX). Nie moge sobie z tym poradzic bo nie mam pojecia w czym tkwi problem.
Dodam, ze na poczatku sesje byly tworzone z czasem 'nieskonczonym'. Teraz zmienilem na 'do zamkniecia przegladarki'. Prosze o pomoc bo nie mam zielonego pojecia gdzie moze tkwic blad
Nikt nie jest w stanie nawet teoretycznych mysli zaprezentowac ?

Po wczorajszym wieczorze z tym problem juz calkowicie jestem pozabawiony jakichkolwiek pomyslow. Jesli podalem za malo informacji, to chetnie dam wiecej... napiszcie co wam potrzeba