Eingeloggte User anzeigen

  • #1
W

wiwatech

Bekanntes Mitglied
Themenersteller
Dabei seit
09.08.2005
Beiträge
168
Reaktionspunkte
0
Ort
Hamburg
Hi,

ich habe über ein CMS einen Mitgliederbereich eingerichtet. Nun möchte ich ebenfalls in einer Liste anzeigen lassen, wer gerade eingeloggt ist:

Weiss jemand wie ich das am besten umsetzen kann!

CMS ist Websitebaker 2.7

Danke!
 
  • #2
Hallo,

ich habe mir das CMS jetzt mal angesehen. Ich kannte es vorher nicht. Die eingeloggten User sollen im Admin Bereich angezeigt werden? Grundsätzlich ist es möglich diese Funktionalität nachzurüsten. Hierfür müssen einige PHP Zeilen in verschiedenen Dateien erweitert werden.

Das Problem ist das das CMS die Datenbank- Tabelle users nur bei einem logout aktualisiert. Die aktuell eingeloggten User werden also hier nicht angezeigt.

Hast Du die benötigten PHP Kenntnisse um nach einen kleinen Workaround diese Änderungen zu programmieren? :coolsmiley:

Mfg.
 
  • #3
Hallo,

ne, die eingeloggten User sollen im Frontend angezeigt werden. Ich hab da ne Shoutbox eingerichtet. Nun möchte ich bzw. die User auch sehen, wer sich gerade auf der Seite eingeloggt befindet, wie in einem normalen Chatraum quasi.

Meine PHP-Kenntnisse sind bescheiden, also ich kann fertige Codeschnipsel einfügen und leicht verändern, das wars dann aber auch.

Die Website ist:

Das CMS ist eigentlich sehr praktisch, sehr einfach zu bedienen und lässt viel Freiraum zum personalisieren des Systems. Ich finds gut!

mfg[br][br]Erstellt am: 16.07.09 um 07:16:04
[br]ACh ja, im Backend gibt es eine Funktion, in der man anzeigen lassen kann, an welchem Tag welcher User das letzte Mal online war und wieviel Tage das her ist.

Ist zwar nicht ganz das was ich suche, aber schon mal ein anfang!
 
  • #4
Gut, die Shoutbox ist aber nur für eingelogte User sichtbar?

Die Funktion im Backend ist das was ich beschrieben habe. Sie liest den timestamp Wert vom Feld: login_when der Tabelle users aus. Dieser Wert wird aber anscheind nur beim Logout des Users gesetzt und hilft bei dem Problem nicht weiter.

mögliche Lösung:
Beim Anlegen eines neuen Nutzers im Backend sollte dessen Anzeigename (Feld: display_name), Status (1=eingelogt / 0=false) und ein timestamp in eine festgelegte XML Datei gespeichert werden. Hierfür müsste die Datei admin/users/users.php erweitert werden. Sollte der Benutzer gelöscht werden, muss er natürlich auch aus der XML Datei entfernt werden.

Dann sollte in die Login Datei eine Erweiterung geschrieben werden, welche die XML Datei mit den aktuell angemeldeten Anzeigenamen aktualisiert. Erfolgt ein Logout oder der Timestamp ist abgelaufen wird der Status vom User auf 0 gesetzt.

Die XML Datei kann dynamisch asynchron (z.B. jede Minute) über Ajax ausgelesen werden ohne das die Seite der Shoutbox neu geladen werden muss.

Aus Sicherheitsgründen sollte nur der Anzeigename, nicht der Benutzername, in die XML Datei geschrieben werden.

das wäre mein Ansatz :froehlich1:
viel Erfolg
 
  • #5
Klingt soweit ganz gut! Ist allerdings ein wenig zu viel für mich!

Selber schreiben kann ich sowas leider überhaupt nicht.
Sowas müsste aber doch in anderen Chats oder CMS vorhanden sein. Könnte man davon nicht was mbauen oder so?
 
  • #6
nun ja, es wird die Benutzerverwaltung vom CMS verwendet, da dieses eine solche Funktionalität nicht unterstützt, muss dann das CMS nachgerüstet werden, Es wird sich ja nicht in die shoutbox eingeloggt.

denkbar wäre auch eine Erweiterung der Tabelle users, allerdings rate ich die (kleine) Ajax Aktualisierung bei jeden eingeloggten User nicht automatisch auf die Datenbank des CMS loszulassen

das CMS hat ja auch ein Support Forum, vielleicht habe ich in der Kürze der Zeit auch etwas übersehen und es geht doch leichter als angegeben
 
Thema:

Eingeloggte User anzeigen

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.966
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben