ID: 14809 User updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Status: Bogus Bug Type: Session related Operating System: linux 2.4.7-10 PHP Version: 4.1.1 New Comment:
No, I'm not using it within a function. Here is a small script that will reproduce the problem: page1.php: <? // page1.php session_start(); session_register("session"); global $session; $session['profileName'] = "name"; echo "session var value is ".$session['profileName']; // will be "name" echo "<br>click <a href= 'page2.php' >here</a> to continue:"; ?> ---------- page2.php: <? page2.php session_start(); global $session; echo "session var initial value is ".$session['profileName']; // will be "name" $session['profileName']="new_name"; echo "session var new value is ".$session['profileName']."<br>"; // will be new_name echo "but actual session var value is ".$_SESSION[session][profileName]."<br>"; // note the difference in output! // $session['profileName'] is "new_name" // but $_SESSION[session][profileName] is still "name" echo "click <a href='page3.php'>here</a> to continue"; -------- page3.php: <? //page3.php session_start(); global $session; echo "session var is now".$session['profileName']; // will be name instead of new_name. ----------- cheers! Previous Comments: ------------------------------------------------------------------------ [2002-01-07 02:38:42] [EMAIL PROTECTED] I guess you are using session register within a function, right? If so, please ask support question to php-general. If not, reopen this bug report with short/complete script. ------------------------------------------------------------------------ [2002-01-02 16:51:39] [EMAIL PROTECTED] hi This seems to be a problem with the way session variables register in 4.1.1 I have defined a session variable called $session thus: session_start(); session_register("session"); global $session; $session['profileName'] = "name"; This seems to work fine. On the next page I do: session_start(); global $session; echo "profileName=".$session['profileName']; (displays name) $session['profileName']="new name"; however, this doesn't seem to actually change the session variable, since on the next page if i echo $session['profileName'] it still shows 'name' instead of 'new name' I can modify the session var value using $_SESSION[session][profileName]="new name"; and then it works fine on the next page. The latter format worked with 4.0.5, i just installed 4.1.1 and now apparently I have to modify all my scripts.. Here is my config: './configure' '--with-mysql' '--with-apxs=/usr/local/apache/bin/apxs' '--enable-track-vars=yes' register_globals is on. apache version is 1.3.20 ------------------------------------------------------------------------ Edit this bug report at http://bugs.php.net/?id=14809&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]