session - PHP's $_SESSION overwritten - only in Firefox (Mozilla) -
within site, use variable $location keeps track of page user viewing. @ end of index.php, variable copied $_session array, upon next request know user last time (i use generating "back" links). index.php goes this:
$location = getlocation(); // gets user location processing $_post , $_get
if(!isset($_session['last_location'])) $_session['last_location'] = somemeaningfullocation();
.
.
outputpage(); // renders page based on $location
.
.
$_session['last_location'] = $location;
so in outputpage(), $_session['last_location'] variable can used generating "back" links. problem is: this code works msie, chrome , safari. doesn't, however, work firefox nor seamonkey (which use web development). in these browsers, "back" links point frontpage.
other facts might useful:
- session data stored in files, server date , time set right
- i've tried playing cache settings (header('cache-control: ...') etc.) no difference
- i've tried disabling network.prefetch-next in firefox/seamonkey config (no difference)
- the
somemeaningfullocation()
function not return frontpage location - eliminate possibility session 'forgotten' , re-initialized upon each request - excluded fact that... - ... other session variables work fine (but 1 different in content automatically updated upon each request)
- nothing wrong can seen in apache access/error logs (it same other browsers)
- when check $_session['last_location'] value after assignment (in end of index.php), has correct value. when check in beginning of index.php, overwritten frontpage's location (i repeat: in mozilla. in other browsers, these checks show correct, expected values!)
thanks in advance, i'm out of ideas :-)
Comments
Post a Comment