#43358 [Com]: 500 HTTP error when eval()'d code contains a notice/warning
| From: | andy at boeckler dot org | Date: | Wed, 23 Jul 2008 12:00:45 +0000 |
| Subject: | #43358 [Com]: 500 HTTP error when eval()'d code contains a notice/warning | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-127183@lists.php.net to get a copy of this message | ||
ID: 43358
Comment by: andy at boeckler dot org
Reported By: andrea dot spacca at gmail dot com
Status: No Feedback
Bug Type: *General Issues
Operating System: Gentoo
PHP Version: 5.2.5
Assigned To: fb-req-jani
New Comment:
I have the same issue with 5.2.6 with @eval. See Bug #45592.
Some can mark my bug entry as duplicate.
testCode:
<?php
error_reporting(E_ALL & ~E_NOTICE);
class Test {
function func1() { // HTTP 500
ini_set('display_errors', 'off');
@eval('completely wrong');
echo 'boo'; exit();
}
function func2() { //HTTP 200
ini_set('display_errors', 'on');
@eval('completely wrong');
echo 'boo'; exit();
}
function func3() { // HTTP 200 and HTTP 500 with output buffering
ini_set('display_errors', 'off');
echo 'noerror';
@eval('completely wrong');
echo 'boo'; exit();
}
}
Test::func1();
//Test::func2();
//Test::func3();
?>
Previous Comments:
------------------------------------------------------------------------
[2008-04-11 01:00:00] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
------------------------------------------------------------------------
[2008-04-03 14:29:26] jani@php.net
Please try using this CVS snapshot:
http://snaps.php.net/php5.2-latest.tar.gz
For Windows (zip):
http://snaps.php.net/win32/php5.2-win32-latest.zip
For Windows (installer):
http://snaps.php.net/win32/php5.2-win32-installer-latest.msi
------------------------------------------------------------------------
[2008-02-29 19:33:49] not at public dot com
Was able to eliminate this bug by turning output buffering off in
php.ini
------------------------------------------------------------------------
[2008-02-26 11:31:05] zorfling at hotmail dot com
Hi,
I've been having the same problem and thought I'd post my workaround.
If you simply overwrite the headers to return a 200, it works.
eg header("Content-type: text/html", true, 200); (second arg is to
overwrite the current header)
NB This needs to be called AFTER the eval that causes the issue.
Hope this helps,
Chris
------------------------------------------------------------------------
[2007-12-17 22:28:38] not at public dot com
This is an existing bug. Having the same error on 2.5.4 on FreeBSD.
A failed eval results in a 500 error, although when calling error_log()
on the last line of the code, the php script does reach and execute
that.
The script is executed correctly, and the response from the server also
includes the ( correct ) output of the script without any php errors,
but after the 500 header ofcourse. Browsers hang on the error and don't
show the output.
------------------------------------------------------------------------
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/43358
--
Edit this bug report at http://bugs.php.net/?id=43358&edit=1