Mehrere User mit unterschiedlichen Rechten
Samuel Vogel
- php
0 Tom0 Samuel Vogel0 Tom
0 lulu
Hallo,
Ich versuch gerade ein User system zu programieren!
Also es soll nicht mehr als 30 User verwalten und die user die online sind sollen in eine textdatei geschrieben werden damit sie sich nicht nach jeder Aktion neu ainloggen müssen!
Die Text datei soll ungefähr so aussehen:
root {
Rechte = alle
login_status = logged_out
}
aber ich hab keine Ahnung wie ich das in die Datei schreiben soll, weil es soll ja wenn sich ein User einloggt nur genau die Varaible bei dem User der sich eben einloggt ändern!
Ich würde mich über Hilfe von auch sehr freuen!
Hello,
suche hier mal im Forum unter dem Stichwort "Session".
Du musst Deine User ja irgenwie identifiziern können.
Grüße
Tom
Hallo,
Du musst Deine User ja irgenwie identifiziern können.
Ja klar man muss sich mit usernem und passwort einloggen!
samy,
Hello,
Du musst Deine User ja irgenwie identifiziern können.
Ja klar man muss sich mit usernem und passwort einloggen!
Oh entschuldige bitte *geknickt guck*
Aber DU hattest gefragt und NICHT dazu geschrieben, was Dir schon alles klar ist.
Noch was zu Lulus Ausführungen: Ein "abgemeldet" gibt es nicht bei HTTP, da es sich um "verbindungsloses" und "zustandsloses" Protokoll handelt.
Wenn Du die User sich über die klassische Anmeldemaske anmelden lässt (Stichwort "Auth 401"), dann werden nach erfolgeicher Anmeldung die Daten bei jedem Zugriff auf die passende Domain vom Browser mitgesandt. Du musst die Anmeldeberechtigung dann in jedem Script am Anfang wieder überprüfen.
Und hier könnte man dann schauen, wann der User das letzte mal geklickt hat. Wenn es schon zu lange her ist, sendet man einfach wieder die Aufforderung zur Anmeldung (Fehler 401).
Manche Browser machen das aber leider nicht mit, da sie der Meinung sind, dass sie die Anmeldedaten doch schon erfragt hätten und dann gibt's Salat...
Eine bessere Möglichkeit sind daher die Sessions mit Cookies. PHP unterstützt das sehr wirkungsvoll.
Grüße
Tom
Huhu Samuel
Die Text datei soll ungefähr so aussehen:
root {
recht = alle
login_status = logged_out
}
Es würde die Sache vermutlich vereinfachen, wenn Du die Rollendefinition separat von den Benutzerdaten und den An-Abmeldungen im System verwaltest.
Also z.B. in drei Datenbeständen:
1. Rollendefinition
root, darf alles
senior, Berechtigung1, Berechtigung2, Berechtigung3
junior, Berechtigung 3
guest, Berechtigung 4
usw.
2. Die List der Benutzer mit der jeweiligen Rolle
Fritz, root
Paul, junior
Michael, senior
3. die aktuellen Benutzersitzungen
Fritz, angemeldet
Paul, abgemeldet
etc.
Das lässt sich natürlich am einfachsten in einer Datenbank verwalten.
Dann sollte man je Benutzer-Berechtigung-Zuordnung einen eigenen Datensatz anlegen, also aus obigem 1. Beispiel würde sich folgendes ergeben:
root, Berechtigung1
root, Berechtigung2
root, Berechtigung 3
root, Berechtigung 4
senior, Berechtigung1
senior, Berechtigung2
senior, Berechtigung3
junior, Berechtigung 3
guest, Berechtigung 4
Das nur als grobes Beispiel andere Lösungen sind natürlich auch denkbar, dass hängt stark davon ab wie sehr Du die Berechtigungen ausdifferenzieren musst/ möchtest.
Viele Grüße
lulu