Bug #14073 Updated: Premature end of script headers
| From: | sniper@php.net | Date: | Sun, 18 Nov 2001 23:30:49 +0000 |
| Subject: | Bug #14073 Updated: Premature end of script headers | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-70837@lists.php.net to get a copy of this message | ||
ID: 14073
Updated by: sniper
Reported By: actualmatt@yahoo.com
Old Status: Open
Status: Bogus
Bug Type: Reproducible crash
Operating System: Win98
PHP Version: 4.0.6
New Comment:
It's hard to tell whether the problem is in ODBC part
or something else. This is not a bug in PHP but in your
script / system settings. Check your error logs for more
information. Try also running the script from command line.
Ask further support questions on the mailing lists:
http://www.php.net/support.php
--Jani
Previous Comments:
------------------------------------------------------------------------
[2001-11-15 20:23:05] actualmatt@yahoo.com
This is the script that causes the problems:
(I tried cutting it down more, but as the problem part relies on the rest of the script it
wasn't possible)
<?php
if( !isset( $month )) {
$month = date("m");
}
$month = str_pad( $month, 2, "0", STR_PAD_LEFT);
$month = str_pad( $month, 4, "0");
$people = array( "ross", "jen", "jon", "mp",
"matt", "marty" );
$link = odbc_connect( 'calendar', '', '' )
or die("connect failed");
foreach( $people as $person ) {
$result = odbc_exec( $link, "SELECT * FROM calendar WHERE name = '$person'");
echo $person ."<br>";
while( odbc_fetch_row( $result ) ){
$startdate = odbc_result( $result, 2 );
$enddate = odbc_result( $result, 3 );
$startdate = substr( $startdate, 4, 4 );
$enddate = substr( $enddate, 4, 4 );
for( $day = 1; $day <32; $day++ ){
if( $day > $startdate and $day < $enddate ) {
//BUG OCCURS HERE
$$person[ $month ][ $day ] = "away";
} else {
$$person[ $month ][ $day ] = "here";
}
echo $$person[ $month ][ $day ] ."<br>";
}
}}
?>
------------------------------------------------------------------------
[2001-11-15 19:25:08] sniper@php.net
Add shortest possible script which can be used to reproduce
this problem into this report.
--Jani
------------------------------------------------------------------------
[2001-11-15 16:25:00] actualmatt@yahoo.com
actually, after further checking it out, it is causing an invalid page fault in PHP4TS.DLL... does
this mean it is a problem with my system, rather than PHP?
------------------------------------------------------------------------
[2001-11-15 16:07:37] actualmatt@yahoo.com
...also, it does the same thing when run from the command line
------------------------------------------------------------------------
[2001-11-15 16:05:06] actualmatt@yahoo.com
Running PHP 4.0.6 on Apache 1.3.20, on Win98SE... Browser returns the "500 - Internal Server
Error" msg, and the error log reports "Premature end of script headers:
c:/php/php.exe"
It seems to be caused by an if() inside a while(), which is inside a foreach(). The script will
reach that point with no problems, but crashes on the execution of the "if( $day >
$startdate and $day < $enddate ){}"
PHP is only compiled with the default modules.
The other thing worth noting is that I get a "Php: This program has performed an illegal
operation and will be shut down" dialog box.
Thanks,
Matt Wilson <actualmatt@yahoo.com>
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=14073&edit=1