mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-08 20:38:52 +00:00
Fix HAVING clause error for MSSQL/MySQL/et al., bug #524336
git-svn-id: file:///svn/phpbb/trunk@2240 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
375e90d8c4
commit
fbdb08846e
1 changed files with 7 additions and 7 deletions
|
@ -395,13 +395,13 @@ if ( isset($HTTP_POST_VARS['submit']) && ( ( $mode == "user" && $user_id ) || (
|
||||||
//
|
//
|
||||||
// Update user level to mod for appropriate users
|
// 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
|
FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . USERS_TABLE . " u
|
||||||
WHERE ug.group_id = aa.group_id
|
WHERE ug.group_id = aa.group_id
|
||||||
AND u.user_id = ug.user_id
|
AND u.user_id = ug.user_id
|
||||||
AND u.user_level NOT IN (" . MOD . ", " . ADMIN . ")
|
AND u.user_level NOT IN (" . MOD . ", " . ADMIN . ")
|
||||||
GROUP BY u.user_id
|
GROUP BY u.user_id
|
||||||
HAVING mod > 0";
|
HAVING SUM(aa.auth_mod) > 0";
|
||||||
if ( !($result = $db->sql_query($sql)) )
|
if ( !($result = $db->sql_query($sql)) )
|
||||||
{
|
{
|
||||||
message_die(GENERAL_ERROR, "Couldn't obtain user/group permissions", "", __LINE__, __FILE__, $sql);
|
message_die(GENERAL_ERROR, "Couldn't obtain user/group permissions", "", __LINE__, __FILE__, $sql);
|
||||||
|
@ -441,22 +441,22 @@ if ( isset($HTTP_POST_VARS['submit']) && ( ( $mode == "user" && $user_id ) || (
|
||||||
)";
|
)";
|
||||||
break;
|
break;
|
||||||
case 'oracle':
|
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
|
FROM " . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug, " . AUTH_ACCESS_TABLE . " aa
|
||||||
WHERE ug.user_id = u.user_id(+)
|
WHERE ug.user_id = u.user_id(+)
|
||||||
AND aa.group_id = ug.group_id(+)
|
AND aa.group_id = ug.group_id(+)
|
||||||
AND u.user_level NOT IN (" . USER . ", " . ADMIN . ")
|
AND u.user_level NOT IN (" . USER . ", " . ADMIN . ")
|
||||||
GROUP BY u.user_id
|
GROUP BY u.user_id
|
||||||
HAVING mod = 0";
|
HAVING SUM(aa.auth_mod) = 0";
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$sql = "SELECT u.user_id, SUM(aa.auth_mod) AS mod
|
$sql = "SELECT u.user_id
|
||||||
FROM ( ( " . USERS_TABLE . " u
|
FROM ( ( " . USERS_TABLE . " u
|
||||||
LEFT JOIN " . USER_GROUP_TABLE . " ug ON ug.user_id = u.user_id )
|
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 )
|
LEFT JOIN " . AUTH_ACCESS_TABLE . " aa ON aa.group_id = ug.group_id )
|
||||||
WHERE u.user_level NOT IN (" . USER . ", " . ADMIN . ")
|
WHERE u.user_level NOT IN (" . USER . ", " . ADMIN . ")
|
||||||
GROUP BY u.user_id
|
GROUP BY u.user_id
|
||||||
HAVING mod = 0";
|
HAVING SUM(aa.auth_mod) = 0";
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if ( !($result = $db->sql_query($sql)) )
|
if ( !($result = $db->sql_query($sql)) )
|
||||||
|
|
Loading…
Add table
Reference in a new issue