diff options
author | Paul S. Owen <psotfx@users.sourceforge.net> | 2002-03-01 17:22:15 +0000 |
---|---|---|
committer | Paul S. Owen <psotfx@users.sourceforge.net> | 2002-03-01 17:22:15 +0000 |
commit | fbdb08846ea33d26e220b4365f11d26a851730bd (patch) | |
tree | cf634d1a3f1297999ef9d08d414a5f56b0c5f897 /phpBB | |
parent | 375e90d8c40f467bbc313c591d7ff170a264ffaf (diff) | |
download | forums-fbdb08846ea33d26e220b4365f11d26a851730bd.tar forums-fbdb08846ea33d26e220b4365f11d26a851730bd.tar.gz forums-fbdb08846ea33d26e220b4365f11d26a851730bd.tar.bz2 forums-fbdb08846ea33d26e220b4365f11d26a851730bd.tar.xz forums-fbdb08846ea33d26e220b4365f11d26a851730bd.zip |
Fix HAVING clause error for MSSQL/MySQL/et al., bug #524336
git-svn-id: file:///svn/phpbb/trunk@2240 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB')
-rw-r--r-- | phpBB/admin/admin_ug_auth.php | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/phpBB/admin/admin_ug_auth.php b/phpBB/admin/admin_ug_auth.php index abcf039fef..7de085c6c1 100644 --- a/phpBB/admin/admin_ug_auth.php +++ b/phpBB/admin/admin_ug_auth.php @@ -395,13 +395,13 @@ if ( isset($HTTP_POST_VARS['submit']) && ( ( $mode == "user" && $user_id ) || ( // // Update user level to mod for appropriate users // - $sql = "SELECT u.user_id, SUM(aa.auth_mod) AS mod + $sql = "SELECT u.user_id FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . USERS_TABLE . " u WHERE ug.group_id = aa.group_id AND u.user_id = ug.user_id AND u.user_level NOT IN (" . MOD . ", " . ADMIN . ") GROUP BY u.user_id - HAVING mod > 0"; + HAVING SUM(aa.auth_mod) > 0"; if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, "Couldn't obtain user/group permissions", "", __LINE__, __FILE__, $sql); @@ -420,7 +420,7 @@ if ( isset($HTTP_POST_VARS['submit']) && ( ( $mode == "user" && $user_id ) || ( switch ( SQL_LAYER ) { case 'postgresql': - $sql = "SELECT u.user_id + $sql = "SELECT u.user_id FROM " . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug, " . AUTH_ACCESS_TABLE . " aa WHERE ug.user_id = u.user_id AND aa.group_id = ug.group_id @@ -441,22 +441,22 @@ if ( isset($HTTP_POST_VARS['submit']) && ( ( $mode == "user" && $user_id ) || ( )"; break; case 'oracle': - $sql = "SELECT u.user_id, SUM(aa.auth_mod) AS mod + $sql = "SELECT u.user_id FROM " . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug, " . AUTH_ACCESS_TABLE . " aa WHERE ug.user_id = u.user_id(+) AND aa.group_id = ug.group_id(+) AND u.user_level NOT IN (" . USER . ", " . ADMIN . ") GROUP BY u.user_id - HAVING mod = 0"; + HAVING SUM(aa.auth_mod) = 0"; break; default: - $sql = "SELECT u.user_id, SUM(aa.auth_mod) AS mod + $sql = "SELECT u.user_id FROM ( ( " . USERS_TABLE . " u LEFT JOIN " . USER_GROUP_TABLE . " ug ON ug.user_id = u.user_id ) LEFT JOIN " . AUTH_ACCESS_TABLE . " aa ON aa.group_id = ug.group_id ) WHERE u.user_level NOT IN (" . USER . ", " . ADMIN . ") GROUP BY u.user_id - HAVING mod = 0"; + HAVING SUM(aa.auth_mod) = 0"; break; } if ( !($result = $db->sql_query($sql)) ) |