note 112348 added to function.set-error-handler
| From: | JacobSlomp | Date: | Tue, 04 Jun 2013 22:57:01 +0000 |
| Subject: | note 112348 added to function.set-error-handler | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-195047@lists.php.net to get a copy of this message | ||
This might be handy if you don't want your clients to see the errors, and you do want to be one
step ahead of them.
It emails you the errors even if it's a parse error.
set_error_handler() doesn't work for what I wanted.
<?php
ini_set('log_errors',TRUE);
ini_set('error_log','tiny_uploads/errors.txt');
if($_SERVER['REMOTE_ADDR'] != "YOUR IP ADDRESS"){
ini_set('display_errors',false);
}
function byebye(){
$dir = dirname(__FILE__);
if(file_exists($dir."/tiny_uploads/errors.txt")){
$errors = file_get_contents($dir."/tiny_uploads/errors.txt");
if(trim($errors)){
$head = "From:
php_errors@".str_replace('www.','',$_SERVER['HTTP_HOST'])."\r\n";
$errors .= "---------------------------------------------\n\n";
$errors .= "\n\nServer Info:\n\n".print_r($_SERVER, 1)."\n\n";
$errors .= "---------------------------------------------\n\n";
$errors .= "\n\nCOOKIE:\n\n".print_r($_COOKIE, 1)."\n\n";
$errors .= "---------------------------------------------\n\n";
$errors .= "\n\nPOST:\n\n".print_r($_POST, 1)."\n\n";
$errors .= "---------------------------------------------\n\n";
$errors .= "\n\nGET:\n\n".print_r($_GET, 1)."\n\n";
mail("YOUR@EMAIL.COM","PHP Error
".$_SERVER['HTTP_HOST']."", $errors , $head);
$fp = fopen($dir."/tiny_uploads/errors.txt","w+");
fputs($fp, "");
fclose($fp);
}
}
}
register_shutdown_function("byebye");
?>
----
Server IP: 69.147.83.199
Probable Submitter: 68.149.179.51
----
Manual Page -- http://php.net/manual/en/function.set-error-handler.php
Edit -- https://master.php.net/note/edit/112348
Del: integrated -- https://master.php.net/note/delete/112348/integrated
Del: useless -- https://master.php.net/note/delete/112348/useless
Del: bad code -- https://master.php.net/note/delete/112348/bad+code
Del: spam -- https://master.php.net/note/delete/112348/spam
Del: non-english -- https://master.php.net/note/delete/112348/non-english
Del: in docs -- https://master.php.net/note/delete/112348/in+docs
Del: other reasons-- https://master.php.net/note/delete/112348
Reject -- https://master.php.net/note/reject/112348
Search -- https://master.php.net/manage/user-notes.php