If the sample of code is the whole page... where do you actually start your session?
I didn't see a session_start() anywhere. AFAIK the $_SESSION var doesn't exist until you do just that. session_is_registered(): mabe I'm reading the documentation wrong, but I interpret this function as checking whether there is the global var (in this case $stage) ... and since register_globals is off there shouldn't be such a var automatically any more. .. In the user comments there's a good example of how to handle sessions. http://www.php.net/session_is_registered#26464 hth Richard Monday, May 3, 2004, 6:40:18 AM, thus was written: > As I posted last week, I seem unable to have sessions persist. I > have ruled out https as a problem, the following simple script, > installed as xxx.php will generate a new session number every time > the field is filled in and "Submit" is hit. > Note that I am not using cookies, the relevant session variables are: > Session Support enabled > session.auto_start On > session.use_cookies Off > session.use_trans_sid On > When run, the session file appears to contain stage=1 but never is being > read. > I suspect I'm missing something obvious, any pointers? > /\/\ \/\/ > <? > if (!session_is_registered("stage")) { > $_SESSION["stage"] = 0; > $_POST['field'] = ""; > session_register("stage"); > } ?>> > <html> <head><title>PHP Test page</title></head> > <body> > <? > echo "Stage:"; echo $_SESSION["stage"]; > echo " SessionID: "; echo session_id(); > $_SESSION["stage"] = 1; ?>> > <form method=post action="xxx.php"> > <input type=text maxlength=7 size=7 name=field > value="<?echo $_POST['field']?>"> > <input type=submit value="Submit"> > </form> > <? > echo "Stage:"; echo $_SESSION["stage"]; ?>> > </body> </html> -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php