Erweiterung der index.php

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
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.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Benutzeravatar
Fabse
Mitglied
Beiträge: 1401
Registriert: 02.06.2003 15:10
Wohnort: Klagenfurt
Kontaktdaten:

Erweiterung der index.php

Beitrag von Fabse »

Hi!


Geht es, dass man die index.php so erweitert, dass die gesamten User von gestern auch sieht? Like this:

Insgesamt haben heute 32 User das Forum besucht :: 3 registrierte, kein versteckter und 29 Gäste. , davon 2 innerhalb der letzten Stunde.
Registrierte Benutzer: Fabse, fRost`, Split_Drachen

//Und dann das von gestern:

Insgesamm haben gestern XX User das Forum besucht :: xx registrierte, x versteckte und xx Gäste, davon xx innerhalb der letzten Stunde.#
Registrierte Benutzer: xx, xx, xx, xx, xx, ...

Wie geht das?
Benutzeravatar
Firestarter
Mitglied
Beiträge: 1162
Registriert: 09.06.2003 15:21

Beitrag von Firestarter »

das macht der Hack last_visit_1.2.7em.zip
MfG
Firestarter
Auch ich versuche mein Glück und möchte ein schönes Forum haben, dafür muss ich wohl erstmal leiden. *fg*
Benutzeravatar
Fabse
Mitglied
Beiträge: 1401
Registriert: 02.06.2003 15:10
Wohnort: Klagenfurt
Kontaktdaten:

Beitrag von Fabse »

nein ich mein stats. nur von gestern! den last visit hab ich!!
timo111
Mitglied
Beiträge: 220
Registriert: 03.02.2004 21:03

Beitrag von timo111 »

ich schieb den beitrag mal hoch weil ich das gleiche suche.

der last visit mod soll mir zusätzlich zu den usern die heute online waren auch noch die user von gestern anzeigen.
Benutzeravatar
itst
Ehrenadmin
Beiträge: 7418
Registriert: 21.08.2001 02:00
Wohnort: Büttelborn bei Darmstadt
Kontaktdaten:

Beitrag von itst »

In der Query einen Tag (86400 Sekunden) mehr anfordern.
Sascha A. Carlin,
phpBB.de Ehrenadministrator
:o
timo111
Mitglied
Beiträge: 220
Registriert: 03.02.2004 21:03

Beitrag von timo111 »

kannst du das auch etwas näher beschreiben? :wink:
Benutzeravatar
itst
Ehrenadmin
Beiträge: 7418
Registriert: 21.08.2001 02:00
Wohnort: Büttelborn bei Darmstadt
Kontaktdaten:

Beitrag von itst »

Ich kenne den Mod nicht, aber er wird die Benutzerdaten wohl so aus der Datenbank holen, das er user_lastvisit benutzt. Und da user_lastvisit vom Typ TIMESTAMP ist, wird der Mod wohl mit

Code: Alles auswählen

UNIX_TIMESTAMP(user_lastvisit) > NOW() - 86400
arbeiten. Aus 86400 172800 machen und gut iss.
Sascha A. Carlin,
phpBB.de Ehrenadministrator
:o
timo111
Mitglied
Beiträge: 220
Registriert: 03.02.2004 21:03

Beitrag von timo111 »

es geht um den last-visit mod.
ich vermute mal das es in diesem teil geändert werden muss, oder?:

Code: Alles auswählen

# 
#-----[ OPEN ]------------------------------------------------ 
# 
index.php

# 
#-----[ FIND ]------------------------------------------------ 
# 
//
// Start output of page

# 
#-----[ BEFORE, ADD ]----------------------------------------- 
# 

// Start add - Last visit MOD
$time_now=time();
$time1Hour=$time_now-3600;
$minutes = date('is', $time_now);
$hour_now = $time_now - (60*($minutes[0].$minutes[1])) - ($minutes[2].$minutes[3]); 
$dato=create_date('H', $time_now,$board_config['board_timezone']);
$timetoday = $hour_now - (3600*$dato); 
$sql = 'SELECT session_ip, MAX(session_time) as session_time FROM '.SESSIONS_TABLE.' WHERE session_user_id="'.ANONYMOUS.'" AND session_time >= '.$timetoday.' AND session_time< '.($timetoday+86399).' GROUP BY session_ip';
if (!$result = $db->sql_query($sql)) message_die(GENERAL_ERROR, "Couldn't retrieve guest user today data", "", __LINE__, __FILE__, $sql); 
while( $guest_list = $db->sql_fetchrow($result))
{ 
	if ($guest_list['session_time'] >$time1Hour) $users_lasthour++;
}
$guests_today = $db->sql_numrows($result);
$sql = 'SELECT user_id,username,user_allow_viewonline,user_level,user_lastlogon FROM ' . USERS_TABLE . ' WHERE user_id!="'.ANONYMOUS.'" AND user_session_time >= '.$timetoday.' AND user_session_time< '.($timetoday+86399).' ORDER BY username'; 
if (!$result = $db->sql_query($sql)) message_die(GENERAL_ERROR, "Couldn't retrieve user today data", "", __LINE__, __FILE__, $sql); 
while( $todayrow = $db->sql_fetchrow($result)) 
{ 
	$style_color = ""; 
	if ($todayrow['user_lastlogon']>=$time1Hour)
	{
		$users_lasthour++;
	}
	switch ($todayrow['user_level'])
	{
		case ADMIN :
		      $todayrow['username'] = '<b>' . $todayrow['username'] . '</b>'; 
      		$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
			break;
		case MOD :
		      $todayrow['username'] = '<b>' . $todayrow['username'] . '</b>'; 
      		$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
			break;
	}
 	$users_today_list.=( $todayrow['user_allow_viewonline'])?' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $todayrow['user_id']) . '"' . $style_color .'>' . $todayrow['username'] . '</a>,' : (($userdata[user_level]==ADMIN) ? ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $todayrow['user_id']) . '"' . $style_color .'><i>' . $todayrow['username'] . '</i></a>,' : '');
	if (!$todayrow['user_allow_viewonline']) $logged_hidden_today++;
	else $logged_visible_today++;
}
if ($users_today_list) 
{
	$users_today_list[ strlen( $users_today_list)-1] = ' '; 
} else
{
	$users_today_list = $lang['None'];
}
$total_users_today = $db->sql_numrows($result)+$guests_today;

$users_today_list = $lang['Registered_users'].' ' . $users_today_list;
$l_today_user_s = ($total_users_today) ? ( ( $total_users_today == 1 )? $lang['User_today_total'] : $lang['Users_today_total'] ) : $lang['Users_today_zero_total'];
$l_today_r_user_s = ($logged_visible_today) ? ( ( $logged_visible_today == 1 ) ? $lang['Reg_user_total'] : $lang['Reg_users_total'] ) : $lang['Reg_users_zero_total'];
$l_today_h_user_s = ($logged_hidden_today) ? (($logged_hidden_today == 1) ? $lang['Hidden_user_total'] : $lang['Hidden_users_total'] ) : $lang['Hidden_users_zero_total'];
$l_today_g_user_s = ($guests_today) ? (($guests_today == 1) ? $lang['Guest_user_total'] : $lang['Guest_users_total']) : $lang['Guest_users_zero_total'];
$l_today_users = sprintf($l_today_user_s, $total_users_today);
$l_today_users .= sprintf($l_today_r_user_s, $logged_visible_today); 
$l_today_users .= sprintf($l_today_h_user_s, $logged_hidden_today); 
$l_today_users .= sprintf($l_today_g_user_s, $guests_today);
// End add - Last visit MOD
mir reicht übrigends die ausgabe "gestern waren xyz user zu besucht". ich brauch nicht die komplette liste.
Benutzeravatar
itst
Ehrenadmin
Beiträge: 7418
Registriert: 21.08.2001 02:00
Wohnort: Büttelborn bei Darmstadt
Kontaktdaten:

Beitrag von itst »

Augen auf :D

Code: Alles auswählen

($timetoday+86399)
Da machste nun

Code: Alles auswählen

($timetoday+172799)
draus.
Sascha A. Carlin,
phpBB.de Ehrenadministrator
:o
timo111
Mitglied
Beiträge: 220
Registriert: 03.02.2004 21:03

Beitrag von timo111 »

ich bräuchte den mod jetzt natürlich doppelt. die user von heute soll er ja auch weiterhin anzeigen. kann man den entsprechenden code anpassen oder muss ich den mod nochmal einbauen?
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“