PHP 4.0 Bug #9802: header() doen't work together with setcookie()
| From: | fabio dot ottolini at uol dot com dot br | Date: | Sat, 17 Mar 2001 03:04:29 +0000 |
| Subject: | PHP 4.0 Bug #9802: header() doen't work together with setcookie() | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-49188@lists.php.net to get a copy of this message | ||
From: fabio.ottolini@uol.com.br
Operating system: Windows NT 4.0
PHP version: 4.0.4pl1
PHP Bug Type: IIS related
Bug description: header() doen't work together with setcookie()
<?php
header("Pragma: no-cache");
header("Cache-Control: no-cache, must-revalidate");
if(empty($check)) {
$page = "index.php?check=1";
header("Location: $page");
setcookie("testcookie", "1");
}
else {
if(empty($testcookie)) {
echo ("<font face=arial size=4 color=red>Problem
detected!</font><br><br>" .
"<b>Your browser does not support cookies!</b><br><br>" .
"<img src=\"imgs/bullet-info-az.gif\" width=15 height=15 align=absmiddle>
" .
"<font size=2>Enable cookies and try again.</font>");
die;
}
else {
$page = "login.php";
header("Location: $page");
}
}
?>
If I use this script with Apache running on any OS (Solaris/RH/Windows 98/ME/NT) it works fine. But
if I use the same script with IIS it simply doesn't send the cookie! I receive no error message
at all but the cookie is never sent (I have even tested it with Nestcape running on the same machine
of IIS server with the warn if cookies are sent checked). The only workaround I have found was to
substitute the header function for a meta-tag refresh. Can you please verify that?
Up the Power Trio!
BR,
Fábio Ottolini
P.S.: I'm only using IIS to host the application because it's a corporate enviroment; I
have no choice at all.
--
Edit Bug report at: http://bugs.php.net/?id=9802&edit=1