<?
// Kein Fehler wird angezeigt
error_reporting(0);
// Fehler werden mit eigener Funktion bearbeitet
set_error_handler('ErrorHandler');
// Funktion versendet Mail
function ErrorHandler($errno,$errstr,$errfile,$errline) {
$error_msg = " - Es ist folgender Fehler auf Ihrer Seite aufgetreten:\n\n".$errstr."\n\nDatei: ".$errfile."\nZeile: ".$errline."\nDatum: ".date("d.m.Y, H:i:s")
$email_addr = "spam@nospam.de";
$remote_dbg = "localhost";
$email = true;
$stdlog = true;
$display = false;// Fehleranzeige
$header = false;// nur mit ob_start();
$notify = true;
$halt_script= true;
switch($errno) {
case E_USER_NOTICE:
case E_NOTICE:
$halt_script= false;
$email = false;
$type = "Notice";
break;
case E_USER_WARNING:
case E_COMPILE_WARNING:
case E_CORE_WARNING:
case E_WARNING:
$halt_script= false;
$type = "Warnung";
break;
case E_USER_ERROR:
case E_COMPILE_ERROR:
case E_CORE_ERROR:
case E_ERROR:
$type = "Fatal Error";
$header = false;
break;
case E_PARSE:
$type = "Parse Error";
break;
default:
$type = "Unbekannter Fehler";
break;
}
if($notify) {
$error_msg = "Fehlertyp: ".$type.$error_msg;
if($email) error_log($error_msg, 1, $email_addr);
if($remote) error_log($error_msg, 2, $remote_dbg);
if($display)echo nl2br($error_msg);
if($stdlog) {
if($log_file == "") error_log($error_msg, 0);
else error_log($error_msg."\n", 3, $log_file);
}
if($header) header('Location: http://'.$_SERVER['HTTP_HOST'].'/error/errorphp.php');
}
if($halt_script) exit -1;
}
?>