$email_r = 'debug2@oyster-creative.co.uk';
$subject = 'DEBUG EMAIL: ' . DOMAIN_NAME;
$message = '';
$from = 'From: kingsley@oyster-creative.co.uk';
// @mail($email_r, $subject, $message, $from);
function myErrorHandler($errno, $errstr, $errfile, $errline)
{
global $email_r, $subject, $from;
if (!(error_reporting() & $errno)) {
// This error code is not included in error_reporting
return;
}
switch ($errno) {
case E_USER_ERROR:
echo "My ERROR [$errno] $errstr
\n";
echo " Fatal error on line $errline in file $errfile";
echo ", PHP " . PHP_VERSION . " (" . PHP_OS . ")
\n";
echo "Aborting...
\n";
exit(1);
break;
case E_USER_WARNING:
echo "My WARNING [$errno]
$errstr
\n";
break;
case E_USER_NOTICE:
echo "My NOTICE [$errno]
$errstr
\n";
break;
default:
//echo "Unknown error type: [$errno]
$errstr
\n";
$message = "File: " . $errfile . "\n";
$message .= "Line: " . $errline . "\n";
$message .= "Err No: " . $errno . "\n";
$message .= "Err Message: " . $errstr . "\n";
$message .= "Page: " . PAGE_NAME . " (" . PAGE_ID . ")" . "\n";
$message .= "Admin Page: " . ADMIN_AREA_ID . "\n";
$message .= "Sub Page Handle: " . SUB_PAGE_HANDLE . "\n";
$message .= "Content Handle: " . CONTENT_HANDLE . "\n";
$message .= "Session ID: " . session_id() . "\n";
$message .= "Session: " . SESSION_NAME . "\n";
$message .= "Base Path: " . BASE_PATH . "\n";
$message .= "Filename: " . "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['SCRIPT_NAME'] . "\n";
$message .= "Refering Page: " . $_SERVER['HTTP_REFERER'] . "\n";
$message .= "Requested Page: " . "http://" . $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] . "\n";
$message .= "Requested Page Error: " . $_SERVER['REDIRECT_REDIRECT_ERROR_NOTES'] . "\n";
$message .= "User: " . $_SESSION['user'] . "\n";
$message .= "Forum User: " . $_SESSION['user_name'] . "\n";
$message .= "Useragent: " . $_SERVER['HTTP_USER_AGENT'] . "\n";
//mail($email_r, $subject, $message, $from);
break;
}
/* Don't execute PHP internal error handler */
return true;
}
function myException($exception)
{
echo "Exception: " , $exception->getMessage();
}
function shutdown(){
$isError = false;
if ($error = error_get_last()){
switch($error['type']){
case E_ERROR:
case E_CORE_ERROR:
case E_COMPILE_ERROR:
case E_USER_ERROR:
$isError = true;
break;
}
}
if ($isError){
echo "Script execution halted ({$error['message']})";
echo "Script execution halted ({$error['line']})";
echo "Script execution halted ({$error['type']})";
} else {
//echo "Script completed";
}
}
function doQuery($sql)
{
global $email_r, $subject, $from;
$result = mysql_query($sql);
if (!$result)
{
//$message = "File: " . $errfile . "\n";
//$message .= "Line: " . $errline . "\n";
$message .= "Err No: " . mysql_errno() . "\n";
$message .= "Err Message: " . mysql_error() . "\n";
$message .= "SQL: " . $sql . "\n";
$message .= "Page: " . PAGE_NAME . " (" . PAGE_ID . ")" . "\n";
$message .= "Admin Page: " . ADMIN_AREA_ID . "\n";
$message .= "Sub Page Handle: " . SUB_PAGE_HANDLE . "\n";
$message .= "Content Handle: " . CONTENT_HANDLE . "\n";
$message .= "Session ID: " . session_id() . "\n";
$message .= "Session: " . SESSION_NAME . "\n";
$message .= "Base Path: " . BASE_PATH . "\n";
$message .= "Filename: " . "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['SCRIPT_NAME'] . "\n";
$message .= "Refering Page: " . $_SERVER['HTTP_REFERER'] . "\n";
$message .= "Requested Page: " . "http://" . $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] . "\n";
$message .= "Requested Page Error: " . $_SERVER['REDIRECT_REDIRECT_ERROR_NOTES'] . "\n";
$message .= "User: " . $_SESSION['user'] . "\n";
$message .= "Forum User: " . $_SESSION['user_name'] . "\n";
$message .= "Useragent: " . $_SERVER['HTTP_USER_AGENT'] . "\n";
//$message = "SQL Query " . $sql . "failed: " . mysql_errno() . "-" . mysql_error();
//@mail($email_r, $subject, $message, $from);
}
return $result;
}
set_error_handler("myErrorHandler");
set_exception_handler('myException');
register_shutdown_function('shutdown');
?>