ID: 12600
User updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Status: Open
Bug Type: Session related
Operating System: linux redhat 7.1
PHP Version: 4.0.6
New Comment:
function sess_reg($x){
global $HTTP_SESSION_VARS;
$a = & $HTTP_SESSION_VARS[$x];
session_register($a);
echo $a;
$GLOBALS[$x] = & $HTTP_SESSION_VARS[$x];
}
this seems to work but it is still strange that
session_register("$HTTP_SESSION_VARS[$x]");
or even
session_register("$HTTP_SESSION_VARS["foo");
do not work inside a function.
even more strange
is that HTTP_SESSION_VARS[$x] does not even exist
at the time you set a reference to it? maybe, i'm
curious now, that session_register() doesn't like
arrays but with register_globals = off you just have
the SESSION-VARS array
Previous Comments:
------------------------------------------------------------------------
[2001-08-06 11:23:34] [EMAIL PROTECTED]
1. when register_globals is off you have to
SET and READ HTTP_SESSION_VARS this is wrong in the docs or
at least confusing (example 1 on
http://www.php.net/manual/en/ref.session.php )
BUG
2. session_register cannot be called from inside another
funcion (when trying a by reference call this generates a
call-time reference error on some servers)
function & sess_reg($x){
global $HTTP_SESSION_VARS;
session_register(& $HTTP_SESSION_VARS[$x]);
$GLOBALS[$x] = & $HTTP_SESSION_VARS[$x];
}
//session_start();
sess_reg("foo");
echo $foo++;
when using session_register($HTTP_SESSION_VARS[$x]);
the variable is NOT registered. and when used by reference
(as in example above) generates a "Warning: Call-time
pass-by-reference has been deprecated -
argument passed by value;"
Tr909
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=12600&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]