mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 06:08:52 +00:00
This is a screwy world! Screwy I tell you!
git-svn-id: file:///svn/phpbb/trunk@5924 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
545bf57cb3
commit
5e1d4527e8
1 changed files with 52 additions and 13 deletions
|
@ -812,12 +812,31 @@ class ucp_main
|
||||||
|
|
||||||
$post_count_sql = (sizeof($forum_ary)) ? 'AND f.forum_id NOT IN (' . implode(', ', $forum_ary) . ')' : '';
|
$post_count_sql = (sizeof($forum_ary)) ? 'AND f.forum_id NOT IN (' . implode(', ', $forum_ary) . ')' : '';
|
||||||
|
|
||||||
|
// Firebird does not support ORDER BY on aliased columns
|
||||||
|
// MySQL does not support ORDER BY on functions
|
||||||
|
switch (SQL_LAYER)
|
||||||
|
{
|
||||||
|
case 'firebird':
|
||||||
$sql = 'SELECT f.forum_id, COUNT(p.post_id) AS num_posts
|
$sql = 'SELECT f.forum_id, COUNT(p.post_id) AS num_posts
|
||||||
FROM ' . POSTS_TABLE . ' p, ' . FORUMS_TABLE . ' f
|
FROM ' . POSTS_TABLE . ' p, ' . FORUMS_TABLE . ' f
|
||||||
WHERE p.poster_id = ' . $user->data['user_id'] . "
|
WHERE p.poster_id = ' . $user->data['user_id'] . "
|
||||||
AND f.forum_id = p.forum_id
|
AND f.forum_id = p.forum_id
|
||||||
$post_count_sql
|
$post_count_sql
|
||||||
GROUP BY f.forum_id";
|
GROUP BY f.forum_id
|
||||||
|
ORDER BY COUNT(p.post_id) DESC";
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
$sql = 'SELECT f.forum_id, COUNT(p.post_id) AS num_posts
|
||||||
|
FROM ' . POSTS_TABLE . ' p, ' . FORUMS_TABLE . ' f
|
||||||
|
WHERE p.poster_id = ' . $user->data['user_id'] . "
|
||||||
|
AND f.forum_id = p.forum_id
|
||||||
|
$post_count_sql
|
||||||
|
GROUP BY f.forum_id
|
||||||
|
ORDER BY num_posts DESC";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
$result = $db->sql_query_limit($sql, 1);
|
$result = $db->sql_query_limit($sql, 1);
|
||||||
$active_f_row = $db->sql_fetchrow($result);
|
$active_f_row = $db->sql_fetchrow($result);
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
@ -830,13 +849,33 @@ class ucp_main
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
$active_f_row['forum_name'] = $row['forum_name'];
|
$active_f_row['forum_name'] = $row['forum_name'];
|
||||||
|
|
||||||
|
// Firebird does not support ORDER BY on aliased columns
|
||||||
|
// MySQL does not support ORDER BY on functions
|
||||||
|
switch (SQL_LAYER)
|
||||||
|
{
|
||||||
|
case 'firebird':
|
||||||
$sql = 'SELECT t.topic_id, COUNT(p.post_id) AS num_posts
|
$sql = 'SELECT t.topic_id, COUNT(p.post_id) AS num_posts
|
||||||
FROM ' . POSTS_TABLE . ' p, ' . TOPICS_TABLE . ' t, ' . FORUMS_TABLE . ' f
|
FROM ' . POSTS_TABLE . ' p, ' . TOPICS_TABLE . ' t, ' . FORUMS_TABLE . ' f
|
||||||
WHERE p.poster_id = ' . $user->data['user_id'] . "
|
WHERE p.poster_id = ' . $user->data['user_id'] . "
|
||||||
AND t.topic_id = p.topic_id
|
AND t.topic_id = p.topic_id
|
||||||
AND f.forum_id = t.forum_id
|
AND f.forum_id = t.forum_id
|
||||||
$post_count_sql
|
$post_count_sql
|
||||||
GROUP BY t.topic_id";
|
GROUP BY t.topic_id
|
||||||
|
ORDER BY COUNT(p.post_id) DESC";
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
$sql = 'SELECT t.topic_id, COUNT(p.post_id) AS num_posts
|
||||||
|
FROM ' . POSTS_TABLE . ' p, ' . TOPICS_TABLE . ' t, ' . FORUMS_TABLE . ' f
|
||||||
|
WHERE p.poster_id = ' . $user->data['user_id'] . "
|
||||||
|
AND t.topic_id = p.topic_id
|
||||||
|
AND f.forum_id = t.forum_id
|
||||||
|
$post_count_sql
|
||||||
|
GROUP BY t.topic_id
|
||||||
|
ORDER BY num_posts DESC";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
$result = $db->sql_query_limit($sql, 1);
|
$result = $db->sql_query_limit($sql, 1);
|
||||||
$active_t_row = $db->sql_fetchrow($result);
|
$active_t_row = $db->sql_fetchrow($result);
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
Loading…
Add table
Reference in a new issue