Escape order by function (thanks to Kajman)
git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@487 7c3ca157-0c34-0410-bff1-cbf682f78f5c
This commit is contained in:
parent
0ba1e28595
commit
b90efd6706
|
@ -49,10 +49,8 @@ foreach ((array) $_GET["where"] as $val) {
|
||||||
}
|
}
|
||||||
$order = array();
|
$order = array();
|
||||||
foreach ((array) $_GET["order"] as $key => $val) {
|
foreach ((array) $_GET["order"] as $key => $val) {
|
||||||
if (in_array($val, $columns, true)) {
|
if (in_array($val, $columns, true) || preg_match('(^(COUNT\\(\\*\\)|(' . strtoupper(implode('|', $functions) . '|' . implode('|', $grouping)) . ')\\((' . implode('|', array_map('preg_quote', array_map('idf_escape', $columns))) . ')\\))$)', $val)) {
|
||||||
$order[] = idf_escape($val) . (isset($_GET["desc"][$key]) ? " DESC" : "");
|
$order[] = idf_escape($val) . (isset($_GET["desc"][$key]) ? " DESC" : "");
|
||||||
} elseif (preg_match('(^(COUNT\\(\\*\\)|(' . strtoupper(implode('|', $functions) . '|' . implode('|', $grouping)) . ')\\((' . implode('|', array_map('preg_quote', array_map('idf_escape', $columns))) . ')\\))$)', $val)) {
|
|
||||||
$order[] = $val . (isset($_GET["desc"][$key]) ? " DESC" : "");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$limit = (isset($_GET["limit"]) ? $_GET["limit"] : "30");
|
$limit = (isset($_GET["limit"]) ? $_GET["limit"] : "30");
|
||||||
|
|
Loading…
Reference in a new issue