User bei Anzahl der aktuellen User ausblenden

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
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

User bei Anzahl der aktuellen User ausblenden

Beitrag von Fähnchen »

Bei dem Snippet Unsichtbarer Administrator hat PhillippK folgende Anleitung geschrieben:
PhillippK hat geschrieben:Soll der Admin (oder ein User) auch bei der Zahl der aktuellen Benutzer ausgeblendet werden, so ist folgende Änderung vorzunehmen:

In der ./includes/page_header.php und in der ./viewonline.php suchen:

Code: Alles auswählen

WHERE u.user_id = s.session_user_id 
und danach einfügen (wenn alle Admins ausgeblendet werden sollen):

Code: Alles auswählen

AND u.user_level != " . ADMIN . "

bzw. (wenn bestimmte User ausgeblendet werden sollen):

Code: Alles auswählen

AND u.user_id NOT IN (2) 
Die 2 ist mit den IDs der auszublendenden Benutzer zu ersetzen (beim ersten Admin i.d.R. 2), mehrere Werte sind durch Komma zu trennen.
Das habe ich genau so getan, aber die Anzahl der Aktuellen User bleibt trotzdem gleich. Es wird kein User ausgeblendet.

Hier einmal der betreffende Code-Abschnitt aus meiner page_header.php:

Code: Alles auswählen

if (defined('SHOW_ONLINE'))
{

	$user_forum_sql = ( !empty($forum_id) ) ? "AND s.session_page = " . intval($forum_id) : '';
	$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 u.user_id != 2
      AND u.user_id NOT IN (2)
			AND s.session_time >= ".( time() - 300 ) . "
			$user_forum_sql
		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);
	}
Das gleiche habe ich in der viewonline.php gemacht, so wie es in der Beschreibung steht.

Hat jemand eine Idee wo der Fehler liegt oder wie ich es eventuell anders lösen könnte, das ein bestimmter User bei der Anzahl der aktuellen User nicht mitgezählt wird?
Die Signatur hat Urlaub.
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

Welche Zeile hast Du denn eingefügt? Diese:

Code: Alles auswählen

AND u.user_id != 2
oder diese:

Code: Alles auswählen

AND u.user_id NOT IN (2)
Oder beide?
Die bewirken beide das selbe. Wenn eine der beiden Zeilen vorher schon drin war kann sich nichts ändern.

Gruß Christian
---
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

Beitrag von Fähnchen »

Beide ...

Ich habe erst eingebaut das ein User nicht in der Onlinelisteund in der Mitgliederliste erscheint und das Profil verborgen wird,

Und danach noch das der User auch nicht mitgezählt wird bei der anzahl der aktuellen Useranzahl. Das zweite klappt nicht.
Die Signatur hat Urlaub.
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

Hat denn der User auch die ID 2 ?
In der Regel hat der Admin die 2 und wenn Du von einem User sprichst hat der bestimmt eine andere ID.
Die ID kannst Du über den Link zum Profil des users herausbekommen:
http://www.phpbb.de/profile.php?mode=viewprofile&u=16697

Gruß Christian
---
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

Beitrag von Fähnchen »

Ne ... ich meine den Hauptadmin mit der UserID 2.
Der soll verborgen und nicht mitgezählt werden.
Nur mit dem nicht mitgezählt werden haut es irgendwie nicht ganz hin.
Die Signatur hat Urlaub.
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

Es geht um die Anzeige auf dem Index: "Insgesamt sind x Benutzer online:"?
Das funktioniert mit der einen Zeile oder mit der Anderen und auch mit beiden zusammen.
Die geänderte Datei hast Du auch hochgeladen?
Wie prüfst Du das was angezeigt wird?

Gruß Christian
---
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

Beitrag von Fähnchen »

Ich teste es auf meinem lokalen Server.
Es geht mir um "Wir haben 10 registrierte Benutzer."
Der Admin wird ausgeblendet, aber trotzdem noch mitgerechnet bei den Usern. Ich dachte eigentlich das bei der Anzahl der User auch einer abgezogen wird für den ausgeblendeten Admin.
Die Signatur hat Urlaub.
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

Tja, das ist etwas anderes. ;)
Dafür machst Du folgendes:

Code: Alles auswählen

----- öffne -----
index.php

----- finde -----
$total_users = get_db_stat('usercount');

----- ersetze mit -----
$total_users = get_db_stat('usercount') -1;
Gruß Christian
---
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

Beitrag von Fähnchen »

Achso!
Dann habe ich die Beschreibung oben wohl falsch verstanden irgendwie.

Funzt wunderbar.
Vielen dank für die Hilfe!
Wenn ich dich nicht hätte ...
Die Signatur hat Urlaub.
Antworten

Zurück zu „phpBB 2.0: Mod Support“