diff options
author | Dries Buytaert <dries@buytaert.net> | 2001-12-23 21:47:02 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2001-12-23 21:47:02 +0000 |
commit | 8c8b305892f3bc66b062a4fd6b46ec37278f0769 (patch) | |
tree | aa7e79aeee29a82e260dfc144ff4d12e0e232110 | |
parent | 2ac4e99feb1c71004a8d3d37ac848e6c8cd65e2d (diff) | |
download | brdo-8c8b305892f3bc66b062a4fd6b46ec37278f0769.tar.gz brdo-8c8b305892f3bc66b062a4fd6b46ec37278f0769.tar.bz2 |
- Added "query log" functionality to Drupal. Inspired by weitzman's
code/patch.
-rw-r--r-- | includes/common.inc | 13 | ||||
-rw-r--r-- | includes/database.mysql.inc | 5 | ||||
-rw-r--r-- | includes/database.pear.inc | 6 | ||||
-rw-r--r-- | modules/system.module | 2 | ||||
-rw-r--r-- | modules/system/system.module | 2 | ||||
-rw-r--r-- | modules/user.module | 2 | ||||
-rw-r--r-- | modules/user/user.module | 2 |
7 files changed, 28 insertions, 4 deletions
diff --git a/includes/common.inc b/includes/common.inc index 86a7ae9f7..3e5d6f936 100644 --- a/includes/common.inc +++ b/includes/common.inc @@ -422,7 +422,14 @@ function timer_print() { global $timer; $stop = explode(" ", microtime()); $diff = $stop[0] - $timer[0]; - print "<PRE>execution time: $diff ms</PRE>"; + print "<pre>execution time: $diff ms</pre>"; +} + +function query_print() { + global $queries; + print "<pre>"; + print_r($queries); + print "</pre>"; } function page_header() { @@ -443,6 +450,10 @@ function page_footer() { timer_print(); } + if (variable_get("dev_query", 0)) { + query_print(); + } + if (variable_get("cache", 0)) { cache_set(); } diff --git a/includes/database.mysql.inc b/includes/database.mysql.inc index 1b14da5cd..1dd190077 100644 --- a/includes/database.mysql.inc +++ b/includes/database.mysql.inc @@ -10,6 +10,11 @@ function db_connect($url) { } function db_query($query, $debug = 0) { + global $queries; + + if (variable_get("dev_query", 0)) { + $queries[] = $query; + } $result = mysql_query($query); diff --git a/includes/database.pear.inc b/includes/database.pear.inc index c0aeb9b7e..c48ffbb35 100644 --- a/includes/database.pear.inc +++ b/includes/database.pear.inc @@ -16,7 +16,11 @@ function db_connect($url) { } function db_query($query, $debug = 0) { - global $db_handle; + global $db_handle, $queries; + + if (variable_get("dev_query", 0)) { + $queries[] = $query; + } $result = $db_handle->query($query); diff --git a/modules/system.module b/modules/system.module index d9d5c633c..f84c204f8 100644 --- a/modules/system.module +++ b/modules/system.module @@ -72,6 +72,8 @@ function system_view_options() { // development settings: $output .= "<h3>Development settings</h3>\n"; $output .= form_select("Display timer information", "dev_timer", variable_get("dev_timer", 0), array("Disabled", "Enabled"), "Display the time it took to generate a page. For Drupal development only."); + $output .= form_select("Display query log", "dev_query", variable_get("dev_query", 0), array("Disabled", "Enabled"), "Display a log of the database queries needed to generate the current page."); + $output .= "<hr />\n"; foreach (module_list() as $name) { diff --git a/modules/system/system.module b/modules/system/system.module index d9d5c633c..f84c204f8 100644 --- a/modules/system/system.module +++ b/modules/system/system.module @@ -72,6 +72,8 @@ function system_view_options() { // development settings: $output .= "<h3>Development settings</h3>\n"; $output .= form_select("Display timer information", "dev_timer", variable_get("dev_timer", 0), array("Disabled", "Enabled"), "Display the time it took to generate a page. For Drupal development only."); + $output .= form_select("Display query log", "dev_query", variable_get("dev_query", 0), array("Disabled", "Enabled"), "Display a log of the database queries needed to generate the current page."); + $output .= "<hr />\n"; foreach (module_list() as $name) { diff --git a/modules/user.module b/modules/user.module index 6e0e0a943..f4e8f9cac 100644 --- a/modules/user.module +++ b/modules/user.module @@ -65,7 +65,7 @@ function user_load($array = array()) { $query .= "u.$key = '". addslashes($value) ."' AND "; } } - $result = db_query("SELECT u.*, r.perm FROM users u LEFT JOIN role r ON u.role = r.name WHERE $query u.status < 3"); + $result = db_query("SELECT u.*, r.perm FROM users u LEFT JOIN role r ON u.role = r.name WHERE $query u.status < 3 LIMIT 1"); $user = db_fetch_object($result); diff --git a/modules/user/user.module b/modules/user/user.module index 6e0e0a943..f4e8f9cac 100644 --- a/modules/user/user.module +++ b/modules/user/user.module @@ -65,7 +65,7 @@ function user_load($array = array()) { $query .= "u.$key = '". addslashes($value) ."' AND "; } } - $result = db_query("SELECT u.*, r.perm FROM users u LEFT JOIN role r ON u.role = r.name WHERE $query u.status < 3"); + $result = db_query("SELECT u.*, r.perm FROM users u LEFT JOIN role r ON u.role = r.name WHERE $query u.status < 3 LIMIT 1"); $user = db_fetch_object($result); |