[Phpmyadmin-git] [SCM] phpMyAdmin branch, master, updated. RELEASE_3_3_5-5980-g39aa435
Michal Čihař
nijel at users.sourceforge.net
Tue Jul 27 10:02:21 CEST 2010
The branch, master has been updated
via 39aa4355a90055611412d7f5c75458427545aef3 (commit)
via 01ded03e89e9e92e70c4c29750c34a64e4c2339d (commit)
from 442294fa6070649f920f7c841cf4062a1f7189cc (commit)
- Log -----------------------------------------------------------------
commit 39aa4355a90055611412d7f5c75458427545aef3
Author: Michal Čihař <mcihar at novell.com>
Date: Tue Jul 27 10:01:58 2010 +0200
Convert default queries to unified expansion.
commit 01ded03e89e9e92e70c4c29750c34a64e4c2339d
Author: Michal Čihař <mcihar at novell.com>
Date: Tue Jul 27 09:51:34 2010 +0200
Remove duplicate info.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 5 +++--
Documentation.html | 8 +++++---
libraries/common.lib.php | 18 ++++++++++++++++++
libraries/config.default.php | 14 +++-----------
libraries/sql_query_form.lib.php | 19 +++----------------
5 files changed, 32 insertions(+), 32 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index e9f6419..2acdf45 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -91,8 +91,9 @@ $Id$
+ [core] Dropped AllowAnywhereRecoding configuration variable.
- rfe #3016457 [interface] Define tab order in SQL form to allow easier tab
navigation.
-+ [code] Centralized format string expansion, @VARIABLES@ are recommended way
- now.
++ [core] Centralized format string expansion, @VARIABLES@ are recommended way
+ now, used by file name templates, default queries, export and title
+ generating.
+ [validator] SQL validator works also with SOAP PHP extension.
- [interface] Better formatting for SQL validator results.
- [doc] The linked-tables infrastructure is now called phpMyAdmin
diff --git a/Documentation.html b/Documentation.html
index d5c5d45..bf9a05a 100644
--- a/Documentation.html
+++ b/Documentation.html
@@ -2182,9 +2182,9 @@ setfacl -d -m "g:www-data:rwx" tmp
<span id="cfg_DefaultQueryDatabase">$cfg['DefaultQueryDatabase']</span> string
</dt>
<dd>Default queries that will be displayed in query boxes when user didn't
- specify any. Use %d for database name, %t for table name and %f for a
- comma separated list of column names. Note that %t and %f are only
- applicable to <tt>$cfg['DefaultQueryTable']</tt>.</dd>
+ specify any. You can use standard
+ <a href="#faq6_27">format string expansion</a>.
+ </dd>
<dt id="cfg_SQP_fmtType">$cfg['SQP']['fmtType'] string [<tt>html</tt>|<tt>none</tt>]</dt>
<dd>
@@ -4353,6 +4353,8 @@ chmod o+rwx tmp
<dd>Currently opened database</dd>
<dt><code>@TABLE@</code></dt>
<dd>Currently opened table</dd>
+ <dt><code>@FIELDS@</code></dt>
+ <dd>Fields of currently opened table</dd>
<dt><code>@PHPMYADMIN@</code></dt>
<dd>phpMyAdmin with version</dd>
</dl>
diff --git a/libraries/common.lib.php b/libraries/common.lib.php
index c9a0f11..9c575c9 100644
--- a/libraries/common.lib.php
+++ b/libraries/common.lib.php
@@ -2891,6 +2891,24 @@ function PMA_expandUserString($string, $escape = NULL, $updates = array()) {
}
}
+ /* Fetch fields list if required */
+ if (strpos($string, '@FIELDS@') !== FALSE) {
+ $fields_list = PMA_DBI_fetch_result(
+ 'SHOW FULL COLUMNS FROM ' . PMA_backquote($GLOBALS['db'])
+ . '.' . PMA_backquote($GLOBALS['table']));
+
+ $field_names = array();
+ foreach ($fields_list as $field) {
+ if (!is_null($escape)) {
+ $field_names[] = $escape($field['Field']);
+ } else {
+ $field_names[] = $field['Field'];
+ }
+ }
+
+ $replace['@FIELDS@'] = implode(',', $field_names);
+ }
+
/* Do the replacement */
return str_replace(array_keys($replace), array_values($replace), strftime($string));
}
diff --git a/libraries/config.default.php b/libraries/config.default.php
index 4f71e56..19b0cf0 100644
--- a/libraries/config.default.php
+++ b/libraries/config.default.php
@@ -2344,22 +2344,14 @@ $cfg['ThemePerServer'] = false;
*/
/**
- * Default queries
- * %d will be replaced by the database name.
- * %t will be replaced by the table name.
- * %f will be replaced by a list of field names.
- * (%t and %f only applies to DefaultQueryTable)
+ * Default query for table
*
* @global string $cfg['DefaultQueryTable']
*/
-$cfg['DefaultQueryTable'] = 'SELECT * FROM %t WHERE 1';
+$cfg['DefaultQueryTable'] = 'SELECT * FROM @TABLE@ WHERE 1';
/**
- * Default queries
- * %d will be replaced by the database name.
- * %t will be replaced by the table name.
- * %f will be replaced by a list of field names.
- * (%t and %f only applies to DefaultQueryTable)
+ * Default query for database
*
* @global string $cfg['DefaultQueryDatabase']
*/
diff --git a/libraries/sql_query_form.lib.php b/libraries/sql_query_form.lib.php
index faa563a..728c12c 100644
--- a/libraries/sql_query_form.lib.php
+++ b/libraries/sql_query_form.lib.php
@@ -40,8 +40,6 @@ require_once './libraries/bookmark.lib.php'; // used for file listing
* @uses $GLOBALS['cfg']['DefaultQueryDatabase']
* @uses $GLOBALS['cfg']['Servers']
* @uses $GLOBALS['cfg']['DefaultTabDatabase']
- * @uses $GLOBALS['cfg']['DefaultQueryDatabase']
- * @uses $GLOBALS['cfg']['DefaultQueryTable']
* @uses $GLOBALS['cfg']['Bookmark']
* @uses PMA_generate_common_url()
* @uses PMA_backquote()
@@ -235,8 +233,7 @@ function PMA_sqlQueryFormInsert($query = '', $is_querywindow = false, $delimiter
// $tmp_db_link = htmlspecialchars($db);
$legend = sprintf(__('Run SQL query/queries on database %s'), $tmp_db_link);
if (empty($query)) {
- $query = str_replace('%d',
- PMA_backquote($db), $GLOBALS['cfg']['DefaultQueryDatabase']);
+ $query = PMA_expandUserString($GLOBALS['cfg']['DefaultQueryDatabase'], 'PMA_backquote');
}
} else {
$table = $GLOBALS['table'];
@@ -259,18 +256,8 @@ function PMA_sqlQueryFormInsert($query = '', $is_querywindow = false, $delimiter
// else use
// $tmp_db_link = htmlspecialchars($db);
$legend = sprintf(__('Run SQL query/queries on database %s'), $tmp_db_link);
- if (empty($query) && count($fields_list)) {
- $field_names = array();
- foreach ($fields_list as $field) {
- $field_names[] = PMA_backquote($field['Field']);
- }
- $query =
- str_replace('%d', PMA_backquote($db),
- str_replace('%t', PMA_backquote($table),
- str_replace('%f',
- implode(', ', $field_names),
- $GLOBALS['cfg']['DefaultQueryTable'])));
- unset($field_names);
+ if (empty($query)) {
+ $query = PMA_expandUserString($GLOBALS['cfg']['DefaultQueryTable'], 'PMA_backquote');
}
}
$legend .= ': ' . PMA_showMySQLDocu('SQL-Syntax', 'SELECT');
hooks/post-receive
--
phpMyAdmin
More information about the Git
mailing list