Seite 1 von 2

Zusatz in Wer ist online? Wer war da?

Verfasst: 19.10.2006 12:01
von helirene
Hallo zusammen
Hatte bereits die Suche verwendet, aber nichts passendes gefunden. :(
Derzeit habe ich diese Anzeige in "Wer ist online?":
Insgesamt sind xxx Benutzer online: Kein registrierter, kein versteckter und xxx Gäste. [ Administrator ] [ Moderator ] [ Junior Admin ]

Der Rekord liegt bei xxx Benutzern am xxx.
Registrierte Benutzer: xxx
Möchte gern dieses miteinbinden:
Zusatz: Heute haben xxx Benutzer das Aviation - Forum besucht. Davon xxx innerhalb der letzten Stunde. Insgesamt sind xxx Benutzer online: xxx registrierter, kein versteckter und xxx Gäste.

Der Rekord liegt bei xxx Benutzern am xxx.
Registrierte Benutzer:xxx
Hier die Frage: Wo finde ich diesen MOD?
Danke im voraus für die Antworten.

Verfasst: 19.10.2006 12:05
von Olli Oberhausen
Hi,

meinst Du den?

"Wer war da"

Suche: Wer war heute da :grin:

Verfasst: 19.10.2006 12:19
von helirene
Olli_Moers hat geschrieben:Hi, meinst Du den?"Wer war da"Suche: Wer war heute da :grin:
Hey Olli bist ja super :wink:

Aber das ist er nicht. Wollte gern diesen Zusatz:
Heute haben xxx Benutzer das Aviation - Forum besucht. Davon xxx innerhalb der letzten Stunde.

Verfasst: 20.10.2006 11:56
von Olli Oberhausen
Ich habs mal eben zusammengekloppt aber keine ahnung obs funktioniert. Kannste ja mal testen.
in page_header.php

Code: Alles auswählen

# AFTER
	$l_online_users .= sprintf($l_g_user_s, $guests_online);
#ADD 
	$sql = "SELECT COUNT (u.user_id) AS last_hour_users
		FROM ".USERS_TABLE." u, ".SESSIONS_TABLE." s
		WHERE u.user_id = s.session_user_id
			AND s.session_time >= ".( time() - 3600 ); // Eine stunde
	if( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Could not obtain user/online information', '', __LINE__, __FILE__, $sql);
	}

	if( $row = $db->sql_fetchrow($result) )
	{
		$last_hour_users = $row['last_hour_users'];
	}
	$sql = "SELECT COUNT (u.user_id) AS today_users
		FROM ".USERS_TABLE." u, ".SESSIONS_TABLE." s
		WHERE u.user_id = s.session_user_id
			AND s.session_time >= ".( mktime(0, 0, 0, date('m', time()), date('d', time()), date('Y', time())) ); // Heute seit mitternacht
	if( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Could not obtain user/online information', '', __LINE__, __FILE__, $sql);
	}

	if( $row = $db->sql_fetchrow($result) )
	{
		$today_users = $row['today_users'];
	}
	$l_online_users = "Heute waren $today_users users online, davon $last_hour_users in der letzten Stunde. <br />" . $l_online_users;

Verfasst: 20.10.2006 19:47
von helirene
Danke für die Mühe. Funzt aber nicht. Bekomme Fehlermeldung.

Verfasst: 21.10.2006 15:27
von Olli Oberhausen
helirene hat geschrieben:Danke für die Mühe. Funks aber nicht. Bekomme Fehlermeldung.
Und welche?

Wie gesagt, ist hangetipptt und nicht getestet.
Sollte also mit ein bischen debugging laufen.

Olli

Verfasst: 23.10.2006 09:20
von helirene
Olli_Moers hat geschrieben:
helirene hat geschrieben:Danke für die Mühe. Funks aber nicht. Bekomme Fehlermeldung.
Und welche?
Wie gesagt, ist hangetipptt und nicht getestet.
Sollte also mit ein bischen debugging laufen.
Olli
Moin Olli

Folgender Fehler

Code: Alles auswählen

Allgemeiner Fehler
 
Could not obtain user/online information

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(u.user_id) AS last_hour_users FROM phpbb2users u, phpbb2sessions s ' at line 1

Verfasst: 23.10.2006 09:45
von Olli Oberhausen
Ok, dann lass mal das leerzeichen zwischen COUNT und ( weg.
Also COUNT( ....

Die stelle gibbet 2 mal im code.

Olli

Verfasst: 23.10.2006 09:55
von helirene
Olli_Moers hat geschrieben:Ok, dann lass mal das leerzeichen zwischen COUNT und ( weg.
Also COUNT( ....

Die stelle gibbet 2 mal im code.

Olli
Olli Sauber funzt jetzt. SUPER :D :wink:

Kannst Dir ja mal Dein Ergebnis unter http://www.aviation-forum.eu anschauen. :wink:

Verfasst: 23.10.2006 10:34
von helirene
Nachtrag:

Den Code habe ich mal abgeändert wie Olli zuvor beschrieben hat.
Und noch eine kleine Änderung

Code: Alles auswählen

Heute waren <b>$today_users</b> users online, davon <b>$last_hour_users</b> in der letzten Stunde. <br />" . $l_online_users;
Hier der Code:

Code: Alles auswählen

##-----------[Code Author: Olli_Moers ]---------------
#
# AFTER
   $l_online_users .= sprintf($l_g_user_s, $guests_online);
#ADD
   $sql = "SELECT COUNT(u.user_id) AS last_hour_users
      FROM ".USERS_TABLE." u, ".SESSIONS_TABLE." s
      WHERE u.user_id = s.session_user_id
         AND s.session_time >= ".( time() - 3600 ); // Eine stunde
   if( !($result = $db->sql_query($sql)) )
   {
      message_die(GENERAL_ERROR, 'Could not obtain user/online information', '', __LINE__, __FILE__, $sql);
   }

   if( $row = $db->sql_fetchrow($result) )
   {
      $last_hour_users = $row['last_hour_users'];
   }
   $sql = "SELECT COUNT(u.user_id) AS today_users
      FROM ".USERS_TABLE." u, ".SESSIONS_TABLE." s
      WHERE u.user_id = s.session_user_id
         AND s.session_time >= ".( mktime(0, 0, 0, date('m', time()), date('d', time()), date('Y', time())) ); // Heute seit mitternacht
   if( !($result = $db->sql_query($sql)) )
   {
      message_die(GENERAL_ERROR, 'Could not obtain user/online information', '', __LINE__, __FILE__, $sql);
   }

   if( $row = $db->sql_fetchrow($result) )
   {
      $today_users = $row['today_users'];
   }
   $l_online_users = "Heute waren <b>$today_users</b> users online, davon <b>$last_hour_users</b> in der letzten Stunde. <br />" . $l_online_users;