diff --git a/phpBB/includes/db/mysql.php b/phpBB/includes/db/mysql.php index 8ef18de9df..f5f89e3d1e 100644 --- a/phpBB/includes/db/mysql.php +++ b/phpBB/includes/db/mysql.php @@ -1,23 +1,15 @@ ' . $msg_title . ''; - echo '
phpBB LogoSQL Report      

Page generated in ' . round($totaltime, 4) . " seconds with {$this->num_queries} queries." . (($cache_num_queries) ? " (plus $cache_num_queries " . (($cache_num_queries == 1) ? 'query' : 'queries') . ' returning results from cache)' : '') . '
 
Time spent on MySQL queries:' . round($this->sql_time, 5) . '
Time spent on PHP:' . round($totaltime - $this->sql_time, 5) . '

'; - + echo '
phpBB LogoSQL Report      

Page generated in ' . round($totaltime, 4) . " seconds with {$this->num_queries} queries" . (($cache_num_queries) ? " + $cache_num_queries " . (($cache_num_queries == 1) ? 'query' : 'queries') . ' returning data from cache' : '') . '
Time spent on MySQL queries: ' . round($this->sql_time, 5) . 's | Time spent on PHP: ' . round($totaltime - $this->sql_time, 5) . 's
'; echo $sql_report; - echo '

'; - exit; - break; + break; case 'start': $curtime = explode(' ', microtime()); - $curtime = $curtime[0] + $curtime[1] - $starttime; + $curtime = sprintf('%.5f', $curtime[0] + $curtime[1] - $starttime); $query_hold = $query; $html_hold = ''; @@ -457,16 +446,15 @@ class sql_db if (!$html_table && count($row)) { $html_table = TRUE; - $html_hold .= ''; - $html_hold .= "\n"; + $html_hold .= '
'; foreach (array_keys($row) as $val) { - $html_hold .= ''; + $html_hold .= ''; } - $html_hold .= "\n\n"; + $html_hold .= ''; } - $html_hold .= "\n"; + $html_hold .= ''; $class = 'row1'; foreach (array_values($row) as $val) @@ -474,59 +462,58 @@ class sql_db $class = ($class == 'row1') ? 'row2' : 'row1'; $html_hold .= ''; } - $html_hold .= "\n\n"; + $html_hold .= ''; } } if ($html_table) { - $html_hold .= '
' . (($val) ? ucwords(str_replace('_', ' ', $val)) : ' ') . '' . (($val) ? ucwords(str_replace('_', ' ', $val)) : ' ') . '
' . (($val) ? $val : ' ') . '

'; + $html_hold .= '
'; } } - break; + break; case 'fromcache': $endtime = explode(' ', microtime()); - $endtime = $endtime[0] + $endtime[1] - $starttime; + $endtime = sprintf('%.5f', $endtime[0] + $endtime[1] - $starttime); - $sql_report .= "
Query results obtained from the cache\n\nQuery:\t" . preg_replace('/\t(AND|OR)(\W)/', "\t  \$1\$2", preg_replace('/(.*)/e', "wordwrap('\$1', 120, '\n\t       ')", htmlspecialchars(preg_replace('/[\s]*[\n\r\t]+[\n\r\s\t]*/', "\n\t", $query)))) . "\n\n";
+				$sql_report .= '

Query results obtained from the cache

'; - $sql_report .= "Time before:\t$curtime\nTime after:\t$endtime\nTime elapsed:\t" . ($endtime - $curtime) . "\t(from cache)\n"; + $sql_report .= "Before: {$curtime}s | After: {$endtime}s | Elapsed [cache]: " . ($endtime - $curtime) . "s"; $s = explode(' ', microtime()); mysql_query($query, $this->db_connect_id); $e = explode(' ', microtime()); - $sql_report .= "\t\t" . ($e[0] + $e[1] - $s[0] - $s[1]) . "\t(from DB)\n

"; + $sql_report .= ' | Elapsed [db]: ' . sprintf('%.5f', ($e[0] + $e[1] - $s[0] - $s[1])) . 's

'; $cache_num_queries++; - break; + break; case 'stop': $endtime = explode(' ', microtime()); - $endtime = $endtime[0] + $endtime[1] - $starttime; + $endtime = sprintf('%.5f', $endtime[0] + $endtime[1] - $starttime); - $sql_report .= "\n
\n
Query#{$this->num_queries}:\t" . preg_replace('/\t(AND|OR)(\W)/', "\t  \$1\$2", preg_replace('/(.*)/e', "wordwrap('\$1', 120, '\n\t       ')", htmlspecialchars(preg_replace('/[\s]*[\n\r\t]+[\n\r\s\t]*/', "\n\t", $query)))) . "\n\n";
+				$sql_report .= '

Query #' . $this->num_queries . '
' . $html_hold . '

'; if ($this->query_result) { if (preg_match('/^(UPDATE|DELETE)/', $query)) { - $sql_report .= "Affected rows: " . $this->sql_affectedrows($this->query_result) . "\n\n"; + $sql_report .= "Affected rows: " . $this->sql_affectedrows($this->query_result) . ' | '; } - $sql_report .= "Time before: $curtime\nTime after: $endtime\nTime elapsed: " . ($endtime - $curtime) . "\n

"; + $sql_report .= "Before: {$curtime}s | After: {$endtime}s | Elapsed: " . ($endtime - $curtime) . 's'; } else { $error = $this->sql_error(); - $sql_report .= 'FAILED - MySQL Error ' . $error['code'] . ': ' . htmlspecialchars($error['message']) . '

';
+					$sql_report .= 'FAILED - MySQL Error ' . $error['code'] . ': ' . htmlspecialchars($error['message']);
 				}
 
-				$sql_report .= $html_hold;
+				$sql_report .= '

'; $this->sql_time += $endtime - $curtime; - - break; + break; } } } // class sql_db