Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**
- * Parameters:
- * $errno: Error level
- * $errstr: Error message
- * $errfile: File in which the error was raised
- * $errline: Line at which the error occurred
- */
- function my_error_handler($errno, $errstr, $errfile, $errline)
- {
- switch ($errno) {
- case E_USER_ERROR:
- // Send an e-mail to the administrator
- // error_log("Error: $errstr n Fatal error on line $errline in file $errfile n", DEST_EMAIL, ADMIN_EMAIL);
- echo "Error: $errstr n on line $errline in file $errfile";
- //stack trace
- $host='mysql:host=localhost;dbname=logs';
- $user='root';
- $password='';
- $con=new PDO($host,$user,$password);
- $trace=json_encode(debug_backtrace());
- $qry=$con->prepare("insert into error_log (error_type,error_message,error_file,error_line,stack_trace) values('".$errno."','".$errstr."','".$errfile."','".$errline."','".$trace."')");
- $qry->execute();
- // Write the error to our log file
- // error_log("Error: $errstr n Fatal error on line $errline in file $errfile n", DEST_LOGFILE, LOG_FILE);
- echo "<br>";
- break;
- case E_USER_WARNING:
- // Write the error to our log file
- //error_log("Warning: $errstr n in $errfile on line $errline n", DEST_LOGFILE, LOG_FILE);
- echo "$errstr n in $errfile on line $errline n";
- //stack trace
- $host='mysql:host=localhost;dbname=logs';
- $user='root';
- $password='';
- $con=new PDO($host,$user,$password);
- $trace=json_encode(debug_backtrace());
- $qry=$con->prepare("insert into error_log (error_type,error_message,error_file,error_line,stack_trace) values('".$errno."','".$errstr."','".$errfile."','".$errline."','".$trace."')");
- $qry->execute();
- case E_USER_NOTICE:
- // Write the error to our log file
- //error_log("Notice: $errstr n in $errfile on line $errline n", DEST_LOGFILE, LOG_FILE);
- echo "$errstr n in $errfile on line $errline n";
- //stack trace
- $host='mysql:host=localhost;dbname=logs';
- $user='root';
- $password='';
- $con=new PDO($host,$user,$password);
- $trace=json_encode(debug_backtrace());
- $qry=$con->prepare("insert into error_log (error_type,error_message,error_file,error_line,stack_trace) values('".$errno."','".$errstr."','".$errfile."','".$errline."','".$trace."')");
- $qry->execute();
- echo "<br>";
- break;
- default:
- // Write the error to our log file
- //error_log("Unknown error [#$errno]: $errstr n in $errfile on line $errline n", DEST_LOGFILE, LOG_FILE);
- break;
- }
- // Don't execute PHP's internal error handler
- return TRUE;
- }
- // Use set_error_handler() to tell PHP to use our method
- $old_error_handler = set_error_handler("my_error_handler");
- ?>
- trigger_error("Core Error",E_CORE_ERROR);
- trigger_error("Core Warning",E_CORE_WARNING);
- trigger_error("Compile Error",E_COMPILE_ERROR);
- trigger_error("Compile Warning",E_COMPILE_WARNING);
- trigger_error("Strict Error",E_STRICT);
- trigger_error("Recoverable Error", E_RECOVERABLE_ERROR);
- trigger_error("Depreciated Error",E_DEPRECATED);
- trigger_error("parse error",E_PARSE);
- trigger_error("Error",E_ERROR);
Add Comment
Please, Sign In to add comment