function tablesort_sql in Drupal 6
Same name and namespace in other branches
- 4 includes/tablesort.inc \tablesort_sql()
- 5 includes/tablesort.inc \tablesort_sql()
Create an SQL sort clause.
This function produces the ORDER BY clause to insert in your SQL queries, assuring that the returned database table rows match the sort order chosen by the user.
Parameters
$header: An array of column headers in the format described in theme_table().
$before: An SQL string to insert after ORDER BY and before the table sorting code. Useful for sorting by important attributes like "sticky" first.
Return value
An SQL string to append to the end of a query.
Related topics
15 calls to tablesort_sql()
- comment_admin_overview in modules/
comment/ comment.admin.inc - Form builder; Builds the comment overview form for the admin.
- dblog_overview in modules/
dblog/ dblog.admin.inc - Menu callback; displays a listing of log messages.
- dblog_top in modules/
dblog/ dblog.admin.inc - Menu callback; generic function to display a page of the most frequent dblog events of a specified type.
- forum_get_topics in modules/
forum/ forum.module - path_admin_overview in modules/
path/ path.admin.inc - Return a listing of all defined URL aliases. When filter key passed, perform a standard search on the given key, and return the list of matching URL aliases.
File
- includes/
tablesort.inc, line 38 - Functions to aid in the creation of sortable tables.
Code
function tablesort_sql($header, $before = '') {
$ts = tablesort_init($header);
if ($ts['sql']) {
// Based on code from db_escape_table(), but this can also contain a dot.
$field = preg_replace('/[^A-Za-z0-9_.]+/', '', $ts['sql']);
// Sort order can only be ASC or DESC.
$sort = drupal_strtoupper($ts['sort']);
$sort = in_array($sort, array(
'ASC',
'DESC',
)) ? $sort : '';
return " ORDER BY {$before} {$field} {$sort}";
}
}