Hello,
Du kannst Username und Passwort nach dem erfolgreichen Login z.B. in einer Datenbank speichern (oder auch in einer Textdatei) und holst dir bei jedem Seitenaufruf diese Daten aus der Datenbank - anhand der Session-Id.
Username, Passwort und grundlegende Rechte sollten da schon drinstehen, und dann wird die Session-ID mit dem Login-Zeitpunkt dazugeschrieben, sowie bei jedem Request ein "LASTCLICK"-Timestamp gesetzt. So lassen sich Sessions vernünftig verarbeiten.
Das hatte ich hier aber die letzten Tage schon irgendwann ausführlich beschrieben.
Normalerweise vermerkt man in der Session einfach, ob der Nutzer erfolgreich authentifiziert wurde.
Das ist aber nur die Einfach-Variante. Die hat erhebliche Nachteile.
Wenn du den Usernamen/-ID auch noch brauchst, schreibst du das halt auch noch mit in die Session.
Es bei jedem mal erneut aus einer externen Quelle auszulesen, wäre m.E. Nonsense.
Auf die Gefahr, dass DU jetzt meckerst: Nein, das ist kein Nonsense.
Die DB lässt sich auch zwischen den Requests vom Admin verändern. Wenn Du wissen willst, ob ein User noch "online" ist, schaust Du einfach, wann er das letzte Mal geklickt hat (Timestamp), wenn Du wissen musst, was er gerade macht, kannst Du so ganz bequem seine Sessiondatei ermitteln und dort hineinschauen.
Wenn Du ihn kicken musst, nimmst Du einfach die Session-ID aus seinem Userdatensatz heraus und setzt sein "disable login" auf true. (als Beispiel)
Wenn Multisession für die User notwendig ist, muss entsprechend normalisiert werden.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau