<?php
|
|
if (!function_exists("fatal_handler")) {
|
|
function fatal_handler() {
|
|
$errfile = "unknown file";
|
$errstr = "shutdown";
|
$errno = E_CORE_ERROR;
|
$errline = 0;
|
|
$error = error_get_last();
|
|
$listErroriTracciati = array(E_ERROR, E_COMPILE_ERROR, E_CORE_ERROR);
|
|
if (in_array($error['type'], $listErroriTracciati)) {
|
|
$result = print_r($error, true);
|
$resultEsca = mysql_real_escape_string($result);
|
|
$nomeServer = $_SERVER['SERVER_NAME'];
|
|
if (class_exists('PDOMgr')) {
|
try {
|
$db = PDOMgr::create('127.0.0.1', 'censimento_siti', 'root', '' );
|
|
$sql =<<<ENDSQL
|
INSERT INTO log_errori_server
|
(server,livello, messaggio, dt)
|
VALUES (
|
'$nomeServer',
|
'FATAL',
|
'$resultEsca',
|
now()
|
);
|
ENDSQL;
|
$db->insert($sql);
|
} catch (Exception $exc) {
|
error_log($exc->getTraceAsString());
|
}
|
|
} else {
|
//in mancanza di PDOMgr mando la mail
|
$headers = "From: assistenza.pro@vola.it\r\n";
|
$headers .= "Subject: Fatal error rilevato\r\n";
|
|
error_log($result, 1, "cristiano.magro@vola.it", $headers);
|
}
|
}
|
}
|
|
register_shutdown_function("fatal_handler");
|
}
|