User Online

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
iloveratte1
Mitglied
Beiträge: 238
Registriert: 07.03.2005 06:00
Kontaktdaten:

User Online

Beitrag von iloveratte1 »

Hallo, wollte mal nachfragen ob jemand soch ein "MOD" kennt
Ich würde gerne auf der Homepage stehen haben:

- wer Online ist im Forum (namen)
- Wie viele Gäste das Online sind


Später kommt effentuell mal hinzu:

- wie viele im Chat sind


es geht eigentlkich nur um die Oberen 2
und wie bindet man die in eine HTML seite ein? SSI??
wenn es so ein Script überhaupt gibt?


Liebe Grüss aus der schweiz
Stephan
iloveratte1
Mitglied
Beiträge: 238
Registriert: 07.03.2005 06:00
Kontaktdaten:

Beitrag von iloveratte1 »

Hallo hab da was gefunden, allerdings gibt das script mir folgendes aus:

Insgesamt ist ein Benutzer online:
Insgesamt ist ein Benutzer online: Ein registrierter,
Insgesamt ist ein Benutzer online: Ein registrierter, und kein Gast.


Nicht schlecht wäre wenn es nur

Insgesamt ist ein Benutzer online: Ein registrierter, und kein Gast. anzeigen würde.

und darunter die Usernamen die gerade Online sind.
Ist das überhaupt möglich die usernamen aufzulisten?

hier mal den Code:

Code: Alles auswählen

<?php 
define('IN_PHPBB', true); 
$phpbb_root_path = ''; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 

include($phpbb_root_path . 'language/lang_german/lang_main.'.$phpEx); 

$logged_visible_online = 0; 
$logged_hidden_online = 0; 
$guests_online = 0; 
$online_userlist = ''; 

$sql = "SELECT u.username, u.user_id, u.user_allow_viewonline, u.user_level, 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 ) . " 
ORDER BY u.username ASC, s.session_ip ASC"; 
if( !($result = $db->sql_query($sql)) ) 
{ 
message_die(GENERAL_ERROR, 'Could not obtain user/online information', '', __LINE__, __FILE__, $sql); 
} 

$userlist_ary = array(); 
$userlist_visible = array(); 

$prev_user_id = 0; 
$prev_user_ip = ''; 

while( $row = $db->sql_fetchrow($result) ) 
{ 
// User is logged in and therefor not a guest 
if ( $row['session_logged_in'] ) 
{ 
// Skip multiple sessions for one user 
if ( $row['user_id'] != $prev_user_id ) 
{ 
$style_color = ''; 
if ( $row['user_level'] == ADMIN ) 
{ 
$row['username'] = '<b>' . $row['username'] . '</b>'; 
$style_color = 'style="color:#' . $theme['fontcolor3'] . '"'; 
} 
else if ( $row['user_level'] == MOD ) 
{ 
$row['username'] = '<b>' . $row['username'] . '</b>'; 
$style_color = 'style="color:#' . $theme['fontcolor2'] . '"'; 
} 

if ( $row['user_allow_viewonline'] ) 
{ 
$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'>' . $row['username'] . '</a>'; 
$logged_visible_online++; 
} 
else 
{ 
$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'><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; 
} 
} 

$prev_user_id = $row['user_id']; 
} 
else 
{ 
// Skip multiple sessions for one user 
if ( $row['session_ip'] != $prev_session_ip ) 
{ 
$guests_online++; 
} 
} 

$prev_session_ip = $row['session_ip']; 
} 
$db->sql_freeresult($result); 

if ( empty($online_userlist) ) 
{ 
$online_userlist = $lang['None']; 
} 
$online_userlist = $lang['Registered_users'] . ' ' . $online_userlist; 

$total_online_users = $logged_visible_online + $logged_hidden_online + $guests_online; 


if ( $total_online_users == 0 ) 
{ 
$l_t_user_s = $lang['Online_users_zero_total']; 
} 
else if ( $total_online_users == 1 ) 
{ 
$l_t_user_s = $lang['Online_user_total']; 
} 
else 
{ 
$l_t_user_s = $lang['Online_users_total']; 
} 

if ( $logged_visible_online == 0 ) 
{ 
$l_r_user_s = $lang['Reg_users_zero_total']; 
} 
else if ( $logged_visible_online == 1 ) 
{ 
$l_r_user_s = $lang['Reg_user_total']; 
} 
else 
{ 
$l_r_user_s = $lang['Reg_users_total']; 
} 

if ( $logged_hidden_online == 0 ) 
{ 
$l_h_user_s = $lang['Hidden_users_zero_total']; 
} 
else if ( $logged_hidden_online == 1 ) 
{ 
$l_h_user_s = $lang['Hidden_user_total']; 
} 
else 
{ 
$l_h_user_s = $lang['Hidden_users_total']; 
} 

if ( $guests_online == 0 ) 
{ 
$l_g_user_s = $lang['Guest_users_zero_total']; 
} 
else if ( $guests_online == 1 ) 
{ 
$l_g_user_s = $lang['Guest_user_total']; 
} 
else 
{ 
$l_g_user_s = $lang['Guest_users_total']; 
} 
echo '<font face=Arial />'; 
echo $l_online_users = sprintf($l_t_user_s, $total_online_users); 
echo '<br />';
echo $l_online_users .= sprintf($l_r_user_s, $logged_visible_online); 
echo '<br />';
echo $l_online_users .= sprintf($l_g_user_s, $guests_online); 
?> 

Ich hoffe das ist machbar.....

Könnten bestimmt auch noch mehrere leute gebrauchen..

Danke für eure hilfe.
unionerdirk
Mitglied
Beiträge: 333
Registriert: 13.12.2004 08:42
Wohnort: Berlin
Kontaktdaten:

Beitrag von unionerdirk »

Verstehe gerade nicht was du suchst. Das ist doch von Anfang an dabei. Oder willst du auf der Indexseite lesen wer in welchem Forum ist?
iloveratte1
Mitglied
Beiträge: 238
Registriert: 07.03.2005 06:00
Kontaktdaten:

Beitrag von iloveratte1 »

Ich will auf der Hauptseite (nicht Forum) (homepage) sehen wer gerade im Forum ist..

Das ist alles..
iloveratte1
Mitglied
Beiträge: 238
Registriert: 07.03.2005 06:00
Kontaktdaten:

Beitrag von iloveratte1 »

Sowas muss es doch geben, hab ich nämlichauch schon irgendwo gesehen...

gruss Stephan
Suebara
Mitglied
Beiträge: 28
Registriert: 29.01.2005 17:00

Beitrag von Suebara »

Ich habe dazu woanders folgenden Code gefunden

Code: Alles auswählen

<? 
       $guest_users = 0; 
       $logged_in_users = 0; 
       $abfrage = "SELECT session_user_id, session_ip, session_logged_in FROM phpbb_sessions WHERE session_time >= ".( time() - 300 ) . " ORDER BY session_ip"; 
       $ergebnis = mysql_query($abfrage); 
        
       while ($row = mysql_fetch_object($ergebnis)) { 
           if ($row->session_logged_in = '1') { 
               if ($row->session_ip != $prev_ip) { 
                   $logged_in_users++; 
               } 
           } 
           if ($row->session_logged_in = '0') { 
               if ($row->session_ip != $prev_ip) { 
                   $guest_users++; 
               } 
           } 
       $prev_ip = $row->session_ip; 
       } 
?>
Der soll funktionieren. Bei mir kommt da allerdings NIX. :) Vielleicht geht's bei dir?
Suebara
Mitglied
Beiträge: 28
Registriert: 29.01.2005 17:00

Beitrag von Suebara »

Habe deinen Code gerade mal ausprobiert. Aber da erscheint auf meiner Seite nur "Hacking attempt".
Wie hast du das umgangen?
Antworten

Zurück zu „phpBB 2.0: Mod Support“