From: steven dot harrison3 at ntlworld dot com Operating system: windows xp pro PHP version: Irrelevant PHP Bug Type: Session related Bug description: $_SESSION problem - values not being passed
Description: ------------ I�m using EasyPHP1-7 from http://www.easyphp.org/ (this has php 4.3.3, apache server 1.3.27 and MySql but I�m using a Firbird database for this project). I have a windows xp professional operating system(with service pack 2) and am trying to develop a php website on my local machine. I have changed the Php.ini file to : � session.save_path = C:\EasyPHP1-7\temp\ to enable session variables. � php_interbase.dll enabled in easyPHP to connect to Firebird database. Now my problem is that the $_SESSION superglobals are not keeping their value to the next page. � I�ve looked in the C:\EasyPHP1-7\temp\ folder and it seems to create two files � one with the information from the first php page then a new one with nothing in it for the second page, therefore losing the value I want. � Now I know that session start() will create a new session if an existing one does not exist, . � I have checked my php info and session variables are enabled, I�ve even created a privay policy header to see if this was the problem. (found at www.privacycouncil.com ) Has anyone any ideas as I�ve inherited this site as a final year project and it uses these superglobals a lot for database connection and user logins and the university won�t host session variables through php. I've included an incredibly simple php page that won't work but should. Any suggestions would be gratefully accepted as I'm a newby to these session variables. Reproduce code: --------------- //1st php page: <?php Header("P3P:CP='NON CUR OUR IND UNI STA OTC'") ?> <?php session_start(); ?> <html> <head> <title> Starting or resuming a session</title> </head> <body> <?php echo "<p> Your session ID is ".session_id()."</p>"; $_SESSION[product1] = "sonic screwdriver"; echo "The products have been registered "; echo $_SESSION[product1]; echo "<br>"; echo session_save_path(); ?> <p> </p> <p><a href="/_mmServerScripts/session3.php">session3</a></p> </body> </html> //second page <?php Header("P3P:CP='NON CUR OUR IND UNI STA OTC'") ?> <?php if (!session_id()) { session_start(); } ?> <html> <head> <title> Starting or resuming a session</title> </head> <body> <?php echo "<p> Your session ID is ".session_id()."</p>"; $product = $_SESSION[product1]; echo "your chosen product is: "; echo "<br>"; echo "$product"; echo "<br>"; echo "humph!"; ?> </body> </html> Expected result: ---------------- your chosen product is: sonic screwdriver humph! Actual result: -------------- your chosen product is: humph! -- Edit bug report at http://bugs.php.net/?id=30880&edit=1 -- Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=30880&r=trysnapshot4 Try a CVS snapshot (php5.0): http://bugs.php.net/fix.php?id=30880&r=trysnapshot50 Try a CVS snapshot (php5.1): http://bugs.php.net/fix.php?id=30880&r=trysnapshot51 Fixed in CVS: http://bugs.php.net/fix.php?id=30880&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=30880&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=30880&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=30880&r=needscript Try newer version: http://bugs.php.net/fix.php?id=30880&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=30880&r=support Expected behavior: http://bugs.php.net/fix.php?id=30880&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=30880&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=30880&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=30880&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=30880&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=30880&r=dst IIS Stability: http://bugs.php.net/fix.php?id=30880&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=30880&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=30880&r=float MySQL Configuration Error: http://bugs.php.net/fix.php?id=30880&r=mysqlcfg
