Allow changing of default queries (RFE #839168). Documentation.html is valid XHTML again.

This commit is contained in:
Michal Čihař
2003-11-20 15:04:12 +00:00
parent f03bee5560
commit bf620ee826
7 changed files with 116 additions and 79 deletions

View File

@@ -14,6 +14,10 @@ $Source$
operations. operations.
* server_databases.php: Add correct parameters to left frame to keep * server_databases.php: Add correct parameters to left frame to keep
server choice, language, etc. (bug #845397). server choice, language, etc. (bug #845397).
* libraries/config_import.lib.php, config.inc.php, db_details.php,
tbl_query_box.php, Documentation: Allow changing of default queries (RFE
#839168).
* Documentation.html: Valid XHTML again.
2003-11-20 Garvin Hicking <me@supergarv.de> 2003-11-20 Garvin Hicking <me@supergarv.de>
* libraries/auth/*, libraries/dbg/*, libraries/export/* * libraries/auth/*, libraries/dbg/*, libraries/export/*

View File

@@ -658,6 +658,7 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
foreign keys (key value and &quot;display field&quot; are foreign keys (key value and &quot;display field&quot; are
shown)<br /> shown)<br />
(see FAQ 6.21) (see FAQ 6.21)
</li>
<li> <li>
display links on the table properties page, to check referential display links on the table properties page, to check referential
integrity (display missing foreign keys) for each described key; integrity (display missing foreign keys) for each described key;
@@ -1743,8 +1744,8 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
<br /><br /> <br /><br />
</dd> </dd>
<a name="wysiwyg"></a> <dt><a name="wysiwyg"></a>
<dt><b>$cfg['WYSIWYG-PDF'] </b>boolean</dt> <b>$cfg['WYSIWYG-PDF'] </b>boolean</dt>
<dd> <dd>
Utilizes a WYSIWYG editing control to easily place elements of a PDF Utilizes a WYSIWYG editing control to easily place elements of a PDF
page. By clicking on the button 'toggle scratchboard' on the page page. By clicking on the button 'toggle scratchboard' on the page
@@ -1775,6 +1776,14 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
<br /><br /> <br /><br />
</dd> </dd>
<dt><b>$cfg['DefaultQueryTable'] </b>string</dt>
<dt><b>$cfg['DefaultQueryDatabase'] </b>string</dt>
<dd>
Default query that will be displayed in query boxes, when user didn't
specify any. Use %d for database name and %t for table name.
<br /><br />
</dd>
<dt><b>$cfg['SQP']['fmtType']</b> string [<tt>html</tt>|<tt>none</tt>]</dt> <dt><b>$cfg['SQP']['fmtType']</b> string [<tt>html</tt>|<tt>none</tt>]</dt>
<dd> <dd>
The main use of the new SQL Parser is to pretty-print SQL queries. By The main use of the new SQL Parser is to pretty-print SQL queries. By
@@ -1939,7 +1948,7 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
<p> <p>
<a href="#transformationsintro">Introduction</a> &nbsp;-&nbsp; <a href="#transformationsintro">Introduction</a> &nbsp;-&nbsp;
<a href="#transformationshowto">Usage</a> &nbsp;-&nbsp; <a href="#transformationshowto">Usage</a> &nbsp;-&nbsp;
<a href="#transformationsfiles">File structure</a> &nbsp;-&nbsp; <a href="#transformationsfiles">File structure</a>
</p> </p>
<a name="transformationsintro"></a><br /> <a name="transformationsintro"></a><br />
@@ -3444,19 +3453,15 @@ To create a new, empty mimetype please see libraries/transformations/template_ge
You can simply include table in your LaTeX documents, minimal sample You can simply include table in your LaTeX documents, minimal sample
document should look like following one (assuming you have table document should look like following one (assuming you have table
exported in file <code>table.tex</code>): exported in file <code>table.tex</code>):
<br />
<br />
<pre>
<font color="#a52a2a"><b>\documentclass</b></font><font color="#6a5acd">{</font><font color="#a020f0">article</font><font color="#6a5acd">}</font>
<font color="#a52a2a"><b>\usepackage</b></font><font color="#6a5acd">{</font><font color="#6a5acd">longtable</font><font color="#6a5acd">}</font>
<font color="#a52a2a"><b>\begin</b></font><font color="#6a5acd">{</font><font color="#a020f0">document</font><font color="#6a5acd">}</font>
<font color="#a52a2a"><b>\include</b></font><font color="#6a5acd">{</font><font color="#6a5acd">table</font><font color="#6a5acd">}</font>
<font color="#a52a2a"><b>\end</b></font><font color="#6a5acd">{</font><font color="#a020f0">document</font><font color="#6a5acd">}</font>
</pre>
</p> </p>
<pre>
\documentclass{article} % or any class you want
\usepackage{longtable} % for displaying table
\begin{document} % start of document
\include{table} % including exported table
\end{document} % end of document
</pre>
<h4> <h4>
[6.20] In MySQL 4, I see a lot of databases which are not mine, and cannot [6.20] In MySQL 4, I see a lot of databases which are not mine, and cannot
@@ -3575,50 +3580,49 @@ To create a new, empty mimetype please see libraries/transformations/template_ge
The team regrets that the author did not communicate with us before The team regrets that the author did not communicate with us before
sending this alert. However, here is our current reply to the points mentionned: sending this alert. However, here is our current reply to the points mentionned:
<br /><br />
<ul>
<li>&quot;Directory transversal attack&quot;
<br /><br />
This problem had been fixed in version 2.5.0, even if the author reports
the 2.5.2 development version as vulnerable, which we could not reproduce.
<br /><br />
</li>
<li>&quot;Remote local file retrieving&quot;
<br /><br />
This is a misleading title, as the author tells in his text:
&quot;Note that you can't request files ( only dirs )&quot;.
<br /><br />
</li>
<li>&quot;Remote internal directory listing&quot;
<br /><br />
It was possible to retrieve the list of phpMyAdmin's directory (which we
doubt can cause any damage), but we fixed this in the
2.5.2 version.
<br /><br />
</li>
<li>&quot;XSS and Path disclosures&quot;
<br /><br />
Most of the XSS problems have been fixed in version 2.5.0. The rest
have been fixed in the 2.5.2 version.
<br /><br />
We believe that the Path disclosures problems have also been fixed
in version 2.5.2.
<br /><br />
</li>
<li>&quot;Information encoding weakness&quot;
<br /><br />
We believe that an exploit for this weakness would be difficult
to achieve. However version 2.5.2 now encrypts the password
with the well-known blowfish algorithm.
<br /><br />
</li>
</ul>
</p> </p>
<ul>
<li>&quot;Directory transversal attack&quot;
<br /><br />
This problem had been fixed in version 2.5.0, even if the author reports
the 2.5.2 development version as vulnerable, which we could not reproduce.
<br /><br />
</li>
<li>&quot;Remote local file retrieving&quot;
<br /><br />
This is a misleading title, as the author tells in his text:
&quot;Note that you can't request files ( only dirs )&quot;.
<br /><br />
</li>
<li>&quot;Remote internal directory listing&quot;
<br /><br />
It was possible to retrieve the list of phpMyAdmin's directory (which we
doubt can cause any damage), but we fixed this in the
2.5.2 version.
<br /><br />
</li>
<li>&quot;XSS and Path disclosures&quot;
<br /><br />
Most of the XSS problems have been fixed in version 2.5.0. The rest
have been fixed in the 2.5.2 version.
<br /><br />
We believe that the Path disclosures problems have also been fixed
in version 2.5.2.
<br /><br />
</li>
<li>&quot;Information encoding weakness&quot;
<br /><br />
We believe that an exploit for this weakness would be difficult
to achieve. However version 2.5.2 now encrypts the password
with the well-known blowfish algorithm.
<br /><br />
</li>
</ul>
<!-- DEVELOPERS --> <!-- DEVELOPERS -->
<a name="developers"></a><br /> <a name="developers"></a><br />
<h2>Developers Information</h2> <h2>Developers Information</h2>

View File

@@ -14,18 +14,15 @@
+ Version history: ChangeLog + Version history: ChangeLog
+ General notes: README + General notes: README
+ License: LICENSE + License: LICENSE
* Documentation version: $Id: Documentation.html,v 1.518 2003/11/07 * Documentation version: $Id: Documentation.html,v 2.1 2003/11/19
18:01:55 lem9 Exp $ 11:36:19 rabus Exp $
Requirements Requirements
* PHP3, PHP4 or PHP5: phpMyAdmin widely uses the 'str_replace()' PHP * php 4.1.0 or later
function that was added in PHP 3.0.6, but was buggy up until
PHP 3.0.8. Then you should not run this script with PHP3 < 3.0.8.
PHP also needs to be compiled with MySQL support;
If you want to display inline thumbnails of JPEGs with the If you want to display inline thumbnails of JPEGs with the
original aspect ratio, you also need GD2 support in PHP. original aspect ratio, you also need GD2 support in PHP.
* MySQL 3.21 or newer (details); * MySQL 3.23.32 or newer (details);
* a web-browser (doh!). * a web-browser (doh!).
Introduction Introduction
@@ -1201,6 +1198,12 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
functionality was kindly borrowed from www.youngpup.net and is functionality was kindly borrowed from www.youngpup.net and is
underlying so specific license. underlying so specific license.
$cfg['DefaultQueryTable'] string
$cfg['DefaultQueryDatabase'] string
Default query that will be displayed in query boxes, when user
didn't specify any. Use %d for database name and %t for table
name.
$cfg['SQP']['fmtType'] string [html|none] $cfg['SQP']['fmtType'] string [html|none]
The main use of the new SQL Parser is to pretty-print SQL The main use of the new SQL Parser is to pretty-print SQL
queries. By default we use HTML to format the query, but you queries. By default we use HTML to format the query, but you
@@ -1318,7 +1321,7 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
Transformations Transformations
Introduction - Usage - File structure - Introduction - Usage - File structure
[1. Introduction] [1. Introduction]
@@ -1659,9 +1662,9 @@ FAQ - Frequently Asked Questions
[1.17] Which MySQL versions does phpMyAdmin support? [1.17] Which MySQL versions does phpMyAdmin support?
All MySQL versions from 3.21 till 4.0 are fully supported. Please note All MySQL versions from 3.23.32 till 4.0 are fully supported. Please
that the older your MySQL version is, the more limitations you will note that the older your MySQL version is, the more limitations you
have to face. will have to face.
phpMyAdmin provides experimental support for MySQL 4.1. That means phpMyAdmin provides experimental support for MySQL 4.1. That means
that although you can assign character sets to a table or field, that although you can assign character sets to a table or field,
phpMyAdmin will not recode the data when inserting or extracting it. phpMyAdmin will not recode the data when inserting or extracting it.
@@ -2421,14 +2424,11 @@ FAQ - Frequently Asked Questions
You can simply include table in your LaTeX documents, minimal sample You can simply include table in your LaTeX documents, minimal sample
document should look like following one (assuming you have table document should look like following one (assuming you have table
exported in file table.tex): exported in file table.tex):
\documentclass{article} \documentclass{article} % or any class you want
\usepackage{longtable} \usepackage{longtable} % for displaying table
\begin{document} % start of document
\begin{document} \include{table} % including exported table
\end{document} % end of document
\include{table}
\end{document}
[6.20] In MySQL 4, I see a lot of databases which are not mine, and cannot [6.20] In MySQL 4, I see a lot of databases which are not mine, and cannot
access them. access them.

View File

@@ -502,6 +502,14 @@ $cfg['MaxExactCount'] = 20000; // When approximate count < this, PM
$cfg['WYSIWYG-PDF'] = TRUE; // Utilize DHTML/JS capabilities to allow WYSIWYG editing of $cfg['WYSIWYG-PDF'] = TRUE; // Utilize DHTML/JS capabilities to allow WYSIWYG editing of
// the PDF page editor. Requires an IE6/Mozilla based browser. // the PDF page editor. Requires an IE6/Mozilla based browser.
/**
* Default queries.
* %d will be replaced by database name
* %t will be replaced by table name
*/
$cfg['DefaultQueryTable'] = 'SELECT * FROM %t WHERE 1';
$cfg['DefaultQueryDatabase']= '';
/** /**
* SQL Query box settings * SQL Query box settings
* These are the links display in all of the SQL Query boxes * These are the links display in all of the SQL Query boxes

View File

@@ -62,8 +62,13 @@ $auto_sel = ($cfg['TextareaAutoSelect']
<?php echo sprintf($strRunSQLQuery, htmlspecialchars($db)) . ' ' . PMA_showMySQLDocu('Reference', 'SELECT'); ?>&nbsp;:<br /> <?php echo sprintf($strRunSQLQuery, htmlspecialchars($db)) . ' ' . PMA_showMySQLDocu('Reference', 'SELECT'); ?>&nbsp;:<br />
<div style="margin-bottom: 5px"> <div style="margin-bottom: 5px">
<textarea name="sql_query" cols="<?php echo $cfg['TextareaCols'] * 2; ?>" rows="<?php echo $cfg['TextareaRows']; ?>" wrap="virtual" dir="<?php echo $text_dir; ?>"<?php echo $auto_sel; ?>> <textarea name="sql_query" cols="<?php echo $cfg['TextareaCols'] * 2; ?>" rows="<?php echo $cfg['TextareaRows']; ?>" wrap="virtual" dir="<?php echo $text_dir; ?>"<?php echo $auto_sel; ?>>
<?php echo ((!empty($query_to_display)) ? htmlspecialchars($query_to_display) : ''); ?> <?php
</textarea><br /> if (!empty($query_to_display)) {
echo htmlspecialchars($query_to_display);
} else {
echo htmlspecialchars(str_replace('%d', PMA_backquote($db), $cfg['DefaultQueryDatabase']));
}
?> </textarea><br />
<input type="checkbox" name="show_query" value="1" id="checkbox_show_query" checked="checked" />&nbsp; <input type="checkbox" name="show_query" value="1" id="checkbox_show_query" checked="checked" />&nbsp;
<label for="checkbox_show_query"><?php echo $strShowThisQuery; ?></label><br /> <label for="checkbox_show_query"><?php echo $strShowThisQuery; ?></label><br />
</div> </div>

View File

@@ -788,6 +788,14 @@ if (!defined('PMA_CONFIG_IMPORT_LIB_INCLUDED')) {
if (!isset($cfg['WYSIWYG-PDF'])) { if (!isset($cfg['WYSIWYG-PDF'])) {
$cfg['WYSIWYG-PDF'] = TRUE; $cfg['WYSIWYG-PDF'] = TRUE;
} }
if (!isset($cfg['DefaultQueryTable'])) {
$cfg['DefaultQueryTable'] = 'SELECT * FROM %t WHERE 1';
}
if (!isset($cfg['DefaultQueryDatabase'])) {
$cfg['DefaultQueryDatabase']= '';
}
if (!isset($cfg['ShowTooltipAliasDB'])) { if (!isset($cfg['ShowTooltipAliasDB'])) {
$cfg['ShowTooltipAliasDB'] = FALSE; $cfg['ShowTooltipAliasDB'] = FALSE;

View File

@@ -142,7 +142,15 @@ if (isset($is_inside_querywindow) && $is_inside_querywindow == TRUE) {
<?php echo sprintf($strRunSQLQuery, htmlspecialchars($db)) . $queryframe_db_list . (isset($is_inside_querywindow) ? '<br />' : ' ') . PMA_showMySQLDocu('Reference', 'SELECT'); ?> <?php echo sprintf($strRunSQLQuery, htmlspecialchars($db)) . $queryframe_db_list . (isset($is_inside_querywindow) ? '<br />' : ' ') . PMA_showMySQLDocu('Reference', 'SELECT'); ?>
<br /> <br />
<textarea name="sql_query" rows="<?php echo $cfg['TextareaRows']; ?>" cols="<?php echo (isset($is_inside_querywindow) && $is_inside_querywindow == TRUE ? ceil($cfg['TextareaCols'] * 1.25) : $cfg['TextareaCols'] * 2); ?>" wrap="virtual" dir="<?php echo $text_dir; ?>"<?php echo $auto_sel; ?>> <textarea name="sql_query" rows="<?php echo $cfg['TextareaRows']; ?>" cols="<?php echo (isset($is_inside_querywindow) && $is_inside_querywindow == TRUE ? ceil($cfg['TextareaCols'] * 1.25) : $cfg['TextareaCols'] * 2); ?>" wrap="virtual" dir="<?php echo $text_dir; ?>"<?php echo $auto_sel; ?>>
<?php echo ((!empty($query_to_display)) ? htmlspecialchars($query_to_display) : 'SELECT * FROM ' . htmlspecialchars(PMA_backquote($table)) . ' WHERE 1'); ?></textarea> <?php
if (!empty($query_to_display)) {
echo htmlspecialchars($query_to_display);
} elseif (isset($table)) {
echo htmlspecialchars(str_replace('%d', PMA_backquote($db), str_replace('%t', PMA_backquote($table), $cfg['DefaultQueryTable'])));
} else {
echo htmlspecialchars(str_replace('%d', PMA_backquote($db), $cfg['DefaultQueryDatabase']));
}
?></textarea>
</td> </td>
<?php if (isset($table) && $fields_cnt > 0) { ?> <?php if (isset($table) && $fields_cnt > 0) { ?>
<td align="center" valign="top"><?php echo (isset($is_inside_querywindow) ? '<br />' : '') . $strFields; ?>:<br /> <td align="center" valign="top"><?php echo (isset($is_inside_querywindow) ? '<br />' : '') . $strFields; ?>:<br />