note 39125 deleted from ref.session by betz

From: Date: Sun, 18 Jan 2004 10:27:39 +0000
Subject: note 39125 deleted from ref.session by betz
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-63773@lists.php.net to get a copy of this message
Note Submitter: jc_s@NOSPAM.com ---- For those having problems with session variables such as: $_SESSION['sessn_data']['somedata'] = 'somevar'; I have found that session_register('sessn_data') is required at least once (before setting this variable) to keep this data saved in the users session. If you use only $_SESSION['sessn_data'] = 'somevar'; And also use session_register('sessn_data') your session will be reset each time the session_register('sessn_data') is called after you set the $_SESSION['sessn_data'] variable. Example: Page 1: session_start(); session_register('sessn_data'); $_SESSION['sessn_data'] = 'some-var'; Page 2: session_start(); session_register('sessn_data'); echo $_SESSION['sessn_data']; Will return false, also: Page 1: session_start(); $_SESSION['sessn_data']['some-var'] = 'some-value'; Page 2: session_start(); echo $_SESSION['sessn_data']['some-var']; Will return false if session_register('sessn_data') is not called before setting its value. You need to use in this instance: Page 1: session_start(); session_register('sessn_data'); $_SESSION['sessn_data']['some-var'] = 'some-value'; Page 2: session_start(); echo $_SESSION['sessn_data']['some-var']; Tested on Linux Op Sys, Apache 1.3.29 (Unix) and PHP 4.3.3 with register globals switched both on and off, default PHP ini settings.

« previous php.notes (#63773) next »