PHP 4.0 Bug #8772 Updated: user level session storage fails when register_globals off
| From: | serge at freezefotoz dot com | Date: | Tue, 23 Jan 2001 22:50:54 +0000 |
| Subject: | PHP 4.0 Bug #8772 Updated: user level session storage fails when register_globals off | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-44861@lists.php.net to get a copy of this message | ||
ID: 8772
User Update by: serge@freezefotoz.com
Status: Open
Bug Type: *Session related
Description: user level session storage fails when register_globals off
What I have noticed is when I have register_globals on and I run this script, a record is added to
the session table as expected.
<?php
session_register("test");
$HTTP_SESSION_VARS['test'] = "blabla";
?>
but when I have register_globals off and run this script, upon script completion there is NO session
record in the table at all?
Serge
Previous Comments:
---------------------------------------------------------------------------
[2001-01-23 17:13:10] serge@freezefotoz.com
Still does not work. As stated before, when I check the database, the data field is empty.
phpinfo.php
<?php
session_register("test");
$HTTP_SESSION_VARS['test'] = "blabla";
phpinfo();
?>
<a href="/test.php">test</a>
test.php
<?php
print "session var = " . $HTTP_SESSION_VARS['test'];
?>
Config file
<VirtualHost 192.168.0.7>
ServerAdmin webmaster@phpdev1.globalbeach.com
DocumentRoot /www/medialib-dev/htdocs
ServerName medialib-dev.globalbeach.com
ErrorLog /www/medialib-dev/logs/error_log
CustomLog /www/medialib-dev/logs/access_log common
php_flag register_globals off
php_flag track_vars on
php_value auto_prepend_file "/usr/local/apache/conf/pgsql_session_handler.php"
php_value include_path "/www/medialib-dev/libs"
php_value open_basedir "/www/medialib-dev"
</VirtualHost>
---------------------------------------------------------------------------
[2001-01-23 16:19:13] cynic@php.net
it won't print the contents this way. you must use either
echo "session var test = {$HTTP_SESSION_VARS[test]}";
or
echo "session var test = " . $HTTP_SESSION_VARS[test];
if this solves your problem, close the bug, please.
---------------------------------------------------------------------------
[2001-01-23 13:49:50] serge@freezefotoz.com
Yes I did, I followed the examples described in the latest documentation.
session_register("test");
$HTTP_SESSION_VARS['test'] = '12345';
when I try to print on another page,
echo "session var test = $HTTP_SESSION_VARS[test]";
it comes up empty...?
When I look in the database, I have a session record, but the data is empty?
Serge
---------------------------------------------------------------------------
[2001-01-18 06:22:05] sniper@php.net
Feedback by Sascha Schumann <sascha@schumann.cx>:
-------------------------------------------------
And did you assign your data to $HTTP_SESSION_VARS["foo"]
instead of $foo?
The user level storage module gets exactly the same set of
data as the other modules. In fact, there is no distinction
in the session module as to how the data is stored.
- Sascha
---------------------------------------------------------------------------
[2001-01-17 20:36:03] serge@freezefotoz.com
When using a user level session storage method to db for example, if register_globals is off, a
session record is added to the database, but it contains no serialized data. The data portion is
empty.
If I turn register_globals on, the the database record for
the session contains the serialized data.
Is this a bug or a feature???
Thanks, Serge
---------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view the rest of the comments,
please view the bug report online.
Full Bug description available at: http://bugs.php.net/?id=8772