#15983 [Com]: session variables lost between pages
| From: | pratesi at telug dot it | Date: | Fri, 30 Aug 2002 18:45:07 +0000 |
| Subject: | #15983 [Com]: session variables lost between pages | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-18279@lists.php.net to get a copy of this message | ||
ID: 15983
Comment by: pratesi@telug.it
Reported By: sl@scrooge.dk
Status: Feedback
Bug Type: Session related
Operating System: Debian/Linux mips platform
PHP Version: 4.1.2 and 4.2.0
New Comment:
Debian Woody 3.0r0 PPC, PHP 4.2.2
---------------------------------
bash$ find . -name php_config.h
./debian/php4-dev/usr/include/php4/main/php_config.h
./apache-build/main/php_config.h
./cgi-build/main/php_config.h
In all these 3 files, HAVE_PREAD is defined and set to 1:
/* Define if you have the pread function. */
#define HAVE_PREAD 1
BTW, I could try to compile PHP 4.1 or 4.2 on a Linux PPC
box based on glibc 2.1 and check if the same problem
occurs also with glibc 2.1.
Could this check be useful?
Previous Comments:
------------------------------------------------------------------------
[2002-08-30 12:14:18] kalowsky@php.net
Can any of you check your php_config.h file and see if the HAVE_PREAD
variable is defined?
------------------------------------------------------------------------
[2002-08-30 10:06:12] sl@scrooge.dk
I will try to make some test this weekend om the MIPS platform.
------------------------------------------------------------------------
[2002-08-30 06:54:12] pratesi@telug.it
I can make all tests that you want as I'm the sys admin
of the computers at hand.
But if tests affect the use of apache and php, a bit of
patience is needed, as the computer currently using
that workaround is a production server, hence I need
to install and set up an unsed computer of the rack.
An analogous consideration holds true for the Sparc
I'm using :-)
If you prefer, we can continue with private mailing.
Which tests should I perform on the pread() ?
Should I open a bug report for glibc 2.2 ?
Thank you for your time.
------------------------------------------------------------------------
[2002-08-29 16:30:17] kalowsky@php.net
The problem with the suggested work around is fairly straight forward.
from the ext/session/config.m4:
if test "$PHP_SESSION" != "no"; then
AC_CHECK_FUNCS(pread pwrite)
This asks libtool/autoconf to check the system for the functions pread
and pwrite. If they are found by libtool/autoconf (mostly autoconf),
the HAVE_PREAD and HAVE_PWRITE flags are set. If your work around is
actually working, it would suggest to me that pread doesn't work
properly on this non-i386 machines.
Is there any chance you can look into the pread/pwrite functionality of
these non-i386 machines?
------------------------------------------------------------------------
[2002-08-29 12:14:29] neuj60@yahoo.de
Look at these examples, refresh the same file:
Example 1 works fine:
---------
<?php
GLOBAL $HTTP_SESSION_VARS;
session_start();
;session_register('AVAR');
$HTTP_SESSION_VARS['AVAR'] += 1;
print "<p>variable={$HTTP_SESSION_VARS['AVAR']}</p>";
?>
Example 2 doesn't work correctly:
---------
prints always "count=1" and thats stored in the session file:
<?php
session_start();
GLOBAL $count;
session_register("count");
$count++;
print "<p>count=$count</p>";
$count=10;
?>
For scalars Ex. 1 would be ok, but how to deal with objects?
I'm using PHP 4.2.2 (same was with 4.2.1) on Windows2000.
------------------------------------------------------------------------
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/15983
--
Edit this bug report at http://bugs.php.net/?id=15983&edit=1