aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes
diff options
context:
space:
mode:
authorBart van Bragt <bartvb@users.sourceforge.net>2002-01-11 14:36:34 +0000
committerBart van Bragt <bartvb@users.sourceforge.net>2002-01-11 14:36:34 +0000
commit0ff22ee594a804c0e9eb05fdd1f79636298af779 (patch)
treee67d752384d095b42f1b314936cef61a010fcae9 /phpBB/includes
parent5792aeeb85de01b51f6e84577331463d9c311b00 (diff)
downloadforums-0ff22ee594a804c0e9eb05fdd1f79636298af779.tar
forums-0ff22ee594a804c0e9eb05fdd1f79636298af779.tar.gz
forums-0ff22ee594a804c0e9eb05fdd1f79636298af779.tar.bz2
forums-0ff22ee594a804c0e9eb05fdd1f79636298af779.tar.xz
forums-0ff22ee594a804c0e9eb05fdd1f79636298af779.zip
Dropped 'GROUP BY' from whosonline query for compatibility with non-MySQL DB's
git-svn-id: file:///svn/phpbb/trunk@1845 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes')
-rw-r--r--phpBB/includes/page_header.php38
1 files changed, 22 insertions, 16 deletions
diff --git a/phpBB/includes/page_header.php b/phpBB/includes/page_header.php
index e05930804e..fb1bd537ab 100644
--- a/phpBB/includes/page_header.php
+++ b/phpBB/includes/page_header.php
@@ -89,12 +89,11 @@ $s_last_visit = ( $userdata['session_logged_in'] ) ? create_date($board_config['
// Get basic (usernames + totals) online
// situation
//
-$sql = "SELECT u.username, u.user_id, u.user_allow_viewonline, s.session_logged_in, s.session_ip, count(*) as online_count
+$sql = "SELECT u.username, u.user_id, u.user_allow_viewonline, s.session_logged_in, s.session_ip
FROM ".USERS_TABLE." u, ".SESSIONS_TABLE." s
WHERE u.user_id = s.session_user_id
AND ( s.session_time >= ".( time() - 300 ) . "
OR u.user_session_time >= " . ( time() - 300 ) . " )
- GROUP BY u.user_id
ORDER BY u.username ASC";
$result = $db->sql_query($sql);
if(!$result)
@@ -107,31 +106,38 @@ $userlist_visible = array();
$logged_visible_online = 0;
$logged_hidden_online = 0;
$guests_online = 0;
+$prev_user_id = 0;
while( $row = $db->sql_fetchrow($result) )
{
+ // User is logged in and therefor not a guest
if( $row['session_logged_in'] )
{
- if( $row['user_allow_viewonline'] )
+ // Skip multiple sessions for one user
+ if( $row['user_id'] != $prev_user_id )
{
- $user_online_link = "<a href=\"" . append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=" . $row['user_id']) . "\">" . $row['username'] . "</a>";
- $logged_visible_online++;
- }
- else
- {
- $user_online_link = "<a href=\"" . append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=" . $row['user_id']) . "\"><i>" . $row['username'] . "</i></a>";
- $logged_hidden_online++;
- }
-
- if( $row['user_allow_viewonline'] || $userdata['user_level'] == ADMIN )
- {
- $online_userlist .= ($online_userlist != "") ? ", " . $user_online_link : $user_online_link;
+ if( $row['user_allow_viewonline'] )
+ {
+ $user_online_link = "<a href=\"" . append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=" . $row['user_id']) . "\">" . $row['username'] . "</a>";
+ $logged_visible_online++;
+ }
+ else
+ {
+ $user_online_link = "<a href=\"" . append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=" . $row['user_id']) . "\"><i>" . $row['username'] . "</i></a>";
+ $logged_hidden_online++;
+ }
+
+ if( $row['user_allow_viewonline'] || $userdata['user_level'] == ADMIN )
+ {
+ $online_userlist .= ($online_userlist != "") ? ", " . $user_online_link : $user_online_link;
+ }
}
}
else
{
- $guests_online += $row['online_count'];
+ $guests_online++;
}
+ $prev_user_id = $row['user_id'];
}
$online_userlist = $lang['Registered_users'] . " " . $online_userlist;