From 3d2a45ab049606701172c11552aa0c1006d2fbf1 Mon Sep 17 00:00:00 2001 From: David M Date: Fri, 5 May 2006 22:06:17 +0000 Subject: I hope nothing broke! - Added a query builder, it is currently only used for complex queries that involve a FROM clause with two tables and a left join - Changed some function calls in the DBAL - Made the viewtopic queries nicer git-svn-id: file:///svn/phpbb/trunk@5885 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/memberlist.php | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) (limited to 'phpBB/memberlist.php') diff --git a/phpBB/memberlist.php b/phpBB/memberlist.php index f4f4284e36..2f276a98bb 100644 --- a/phpBB/memberlist.php +++ b/phpBB/memberlist.php @@ -113,12 +113,27 @@ switch ($mode) } $db->sql_freeresult($result); - $sql = 'SELECT u.user_id, u.username, u.user_colour, u.user_rank, u.user_posts, g.group_id, g.group_name, g.group_colour, g.group_type, ug.user_id as ug_user_id - FROM (' . USERS_TABLE . ' u, ' . GROUPS_TABLE . ' g) - LEFT JOIN ' . USER_GROUP_TABLE . ' ug ON (ug.group_id = g.group_id AND ug.user_id = ' . $user->data['user_id'] . ') - WHERE u.user_id IN (' . implode(', ', array_unique(array_merge($admin_id_ary, $mod_id_ary))) . ') - AND u.group_id = g.group_id - ORDER BY g.group_name ASC, u.username ASC'; + $sql = $db->sql_build_query('SELECT', array( + 'SELECT' => 'u.user_id, u.username, u.user_colour, u.user_rank, u.user_posts, g.group_id, g.group_name, g.group_colour, g.group_type, ug.user_id as ug_user_id', + + 'FROM' => array( + USERS_TABLE => 'u', + GROUPS_TABLE => 'g' + ), + + 'LEFT_JOIN' => array( + array( + 'FROM' => array(USER_GROUP_TABLE => 'ug'), + 'ON' => 'ug.group_id = g.group_id AND ug.user_id = ' . $user->data['user_id'] + ) + ), + + 'WHERE' => 'u.user_id IN (' . implode(', ', array_unique(array_merge($admin_id_ary, $mod_id_ary))) . ') + AND u.group_id = g.group_id', + + 'GROUP_BY' => 'g.group_name ASC, u.username ASC' + )); + $result = $db->sql_query($sql); while ($row = $db->sql_fetchrow($result)) -- cgit v1.2.1