Bug #15493 Updated: PHP sends no location header when output_buffering = On
| From: | yohgaki@php.net | Date: | Wed, 13 Feb 2002 07:03:40 +0000 |
| Subject: | Bug #15493 Updated: PHP sends no location header when output_buffering = On | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-224@lists.php.net to get a copy of this message | ||
ID: 15493
Updated by: yohgaki@php.net
Reported By: john.zoetebier@transparent.co.nz
Status: Open
Bug Type: Output Control
Operating System: Linux 2.4.8
PHP Version: 4.0.6
New Comment:
4.2.0's output related code differs from 4.1.1. Could you try
snapshot?
http://snaps.php.net/
Please report the result. Thanks.
Previous Comments:
------------------------------------------------------------------------
[2002-02-10 18:16:43] john.zoetebier@transparent.co.nz
//Bug in PHP 4.0.6
If output_buffer = On AND
session_start() AND
header("Location: ..) AND
no HTML output then
PHP sends no header
You expect the browser to redirect to Location URL.
What really happends depends on the browser:
- Netscape: waits a while and nothing happens
- IE: redirects to search engine
- Konqueror: connection lost
- Some browsers indicate empty document received
Work around:
- when output buffering is on, then add blank line before start of
script
- switch output buffering off
Example PHP page excerpt:
<?php
session_start();
if (!isset($HTTP_COOKIE_VARS['CompanyID'])) {
$Info = urlencode("Please log in.");
header("Location: Login.php?Info=$Info");
exit;
}
// More lines .....
?>
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=15493&edit=1