Ejemplo n.º 1
0
 public static function db_error($message, $sql)
 {
     global $_G;
     list($showtrace, $logtrace) = dzz_error::debug_backtrace();
     $title = lang('error', 'db_' . $message);
     $title_msg = lang('error', 'db_error_message');
     $title_sql = lang('error', 'db_query_sql');
     $title_backtrace = lang('error', 'backtrace');
     $title_help = lang('error', 'db_help_link');
     $db =& DB::object();
     $dberrno = $db->errno();
     $dberror = str_replace($db->tablepre, '', $db->error());
     $sql = dhtmlspecialchars(str_replace($db->tablepre, '', $sql));
     $msg = '<li>[Type] ' . $title . '</li>';
     $msg .= $dberrno ? '<li>[' . $dberrno . '] ' . $dberror . '</li>' : '';
     $msg .= $sql ? '<li>[Query] ' . $sql . '</li>' : '';
     dzz_error::show_error('db', $msg, $showtrace, false);
     unset($msg, $phperror);
     $errormsg = '<b>' . $title . '</b>';
     $errormsg .= "[{$dberrno}]<br /><b>ERR:</b> {$dberror}<br />";
     if ($sql) {
         $errormsg .= '<b>SQL:</b> ' . $sql;
     }
     $errormsg .= "<br />";
     $errormsg .= '<b>PHP:</b> ' . $logtrace;
     dzz_error::write_error_log($errormsg);
     exit;
 }