Bug #16102 Updated: >1 session variables not getting set correctly
| From: | anarres at gmx dot net | Date: | Tue, 26 Mar 2002 01:14:54 +0000 |
| Subject: | Bug #16102 Updated: >1 session variables not getting set correctly | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-3336@lists.php.net to get a copy of this message | ||
ID: 16102
Updated by: anarres@gmx.net
Reported By: martin_jones@bigfoot.com
Status: Analyzed
Bug Type: Session related
Operating System: Windows 2000/XP
PHP Version: 4.1.2
New Comment:
This comment is just to say that I am experiencing the same problem
with PHP 4.1.2 as CGI, Windows 98 SE German, Apache 1.3.20, using
php.ini with register_globals turned OFF and neither $_SESSION nor
$HTTP_SESSION_VARS is working. A session file is created in the
sessions directory but no variables are stored within it. A typical
error I get when trying to use a variable previously stored in
$_SESSION is:
Warning: Undefined index: text in session_2.php on line 3. I mistakenly
reported this as a new bug to
http://bugs.php.net/bug.php?id=16273&edit=2
but I set that to
"Duplicate" now, so I hope it will be ok. Sorry. Robert
Previous Comments:
------------------------------------------------------------------------
[2002-03-20 17:57:04] uberl0rd@hotmail.com
Using the $HTTP_SESSION_VARS["foo"] = "bar" is all well and good, but
one of the major points about 4.1.x was the new $_SESSION array and its
global scope. Infact it got a big mention on the download page. Its
only fair to put a big mention that its broke in 4.1.2 as I'm sure that
a few devs (myself included) now have broken code using
$_SESSION["foo"] = "bar" which is silly to take back to the old way of
doing it.
Either make a note or release a patch!
FWIW, this happens on Apache 1.2.23 in SAPI mode and Apache 2.0.32 beta
in CGI mode
------------------------------------------------------------------------
[2002-03-20 12:55:14] j.sejournet@clair-et-net.com
Using session_start() and setting $HTTP_SESSION_VARS['my_Var'] to any
value mays help.
Here is my code to use the $_SESSION array :
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
session_start();
if (!isset($_SESSION["count"])) {
$HTTP_SESSION_VARS["count"] = 0;
}
$_SESSION["count"]++;
echo $_SESSION["count"];
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PHP Version : 4.1.2
OS : Win2K Server
Webserver : APACHE 1.3.22
PHP running as the php.exe
------------------------------------------------------------------------
[2002-03-19 11:21:04] zimba@hotmale.com
Fix it and release a new version or at least make a note on the
downloadpage.
------------------------------------------------------------------------
[2002-03-19 00:39:08] webdevguy1@yahoo.com
After reading more posts on this subject, I went back and put some
debug code into my application. I see now that the POST variables are
fine; the difficulty is with the session variables. The problem appears
to be somewhere in php4ts.dll, which is copied to \WINNT\system32 as
part of the installation. I mentioned earlier that the version from the
link in http://www.zend.com/zend/week/week77.php was OK.
The link on
that page is now dead.
I'm running:
Apache_1.3.23-Mod_SSL_2.8.7-OpenSSL_0.9.6c
Windows 2000 Pro SP2 + pre-SP3 updates
PHP running as module (php4apache.dll); no CGI
MySQL 4.0.1-alpha-win
This problem with session variables is a big deal, but there is no
warning on the download page for Windows users.
------------------------------------------------------------------------
[2002-03-18 01:49:39] martin_jones@bigfoot.com
FYI: Running Win2K Professional and IIS. PHP running as the php.exe
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/16102
--
Edit this bug report at http://bugs.php.net/?id=16102&edit=1