ID: 12968
Updated by: lobbin
Old Summary: Session don't store after header("Location: ...")
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Closed
Bug Type: Session related
Operating System: Linux
PHP Version: 4.0.6
New Comment:

No feedback. Closing.


Previous Comments:
------------------------------------------------------------------------

[2001-12-19 22:22:09] [EMAIL PROTECTED]

Please test with 4.1.0 and latest CVS snapshot.
CVS snapshot source can be found 
http://snaps.php.net/
(No windows binary)

If you don't have problem with latest CVS snapshot,
you can close your bug report by yourself.

Please report the result. When you update your bug
report, do not forget updating PHP version also.

Thank you
-- 
Yasuo



------------------------------------------------------------------------

[2001-08-27 18:37:36] [EMAIL PROTECTED]

Sorry, but no it doesn't help. The UPDATE Session query from site1 still
run after the SELECT Session query from site2.

------------------------------------------------------------------------

[2001-08-27 14:44:02] [EMAIL PROTECTED]

does ingnore_user_abort(true) help ?

------------------------------------------------------------------------

[2001-08-27 05:30:06] [EMAIL PROTECTED]

System:
Linux
PHP 4.06
Apache 1.3.19
mySQL 3.23.38

side1.php
  session_start();
  session_register("var1");
  Header("location:page2.php);
 
side2.php
  session_start();
  session_is_register("logon") returns false;

I check the mySQL logs (i have a personal written session_handler, which
works fine under a lot of different systems with mySQL) and see
following problem

side1.php: SELECT * FROM Session WHERE SessionID ...
.... script queries from side1.php
side2.php: SELECT * FROM Session WHERE SessionID ...
side1.php: UPDATE Session SET ... WHERE SessionID ...
.... script queries from side2.php
side2.php: UPDATE Session Set ... WHERE SessionID ....

instead of the normal: 

side1.php: SELECT * FROM Session WHERE SessionID ...
.... script queries from side1.php
side1.php: UPDATE Session SET ... WHERE SessionID ...
side2.php: SELECT * FROM Session WHERE SessionID ...
.... script queries from side2.php
side2.php: UPDATE Session Set ... WHERE SessionID ....

i think the problem is that the header("Location: ...") works so fast
over the intranet network, that my old developer machine isn't fast
enaugh to handle the script SQL statement, before the new site request
reach another process of the apache and query the session table.
the problem is that the buffer is flushed before the session related
operations are done

What can i do against this behavior?
thanx


------------------------------------------------------------------------



Edit this bug report at http://bugs.php.net/?id=12968&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]

Reply via email to