Bei Login den Verlauf der Login-Seite löschen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Bei Login den Verlauf der Login-Seite löschen

    Hallo Leute,

    ich hätte da mal wieder ein Problem.
    Ich habe mir ein PHP-Beispiel für den Login-Vorgang ergoogelt und dem zu Folge mein eigenes Login-Script erstellt (als Login-Klasse).

    Funktioniert soweit auch ganz gut.
    Ich habe ein Formular welches ich in meiner Seite einbette (in der Navigationsleiste) mit Username, PAsswort und Send-Button. Beim Abschicken werden die Daten per POST-Methode an sich selber geschickt mit dem GET-Parameter 'login=1' (so habe ich das aus dem Beispiel entnommen),
    Dieser Parameter wird von der Login-Klasse abgefragt und wenn gesetzt, der Login-Vorgang vorgenommen. Bei Misserfolg soll eine Meldung angezeigt werden oder die Labels für Passwort und Username rot dargestellt werden o.ä. (das habe ich noch nicht umgesetzt. Ist auch noch nebensächlich im Moment). Wenn der Vorgang erfolgreich war, dann wird statt des Login-Formulars ein Logout-Formular in diesem DIV-Container angezeigt. Angemeldeter User, letzte Anmeldung (Date + Time) und ein Logoout-Button.

    So, wenn ich mich angemeldet habe und irgendwann mal danach die Seite aktualisiere, dann meldet sich der Browser und fragt ob die Daten nochmals geschickt werden sollen. Bestätigt man mit JA, dann logt man sich zu diesem Zeitpunkt erneut wieder ein.

    Ich kann mich von 'damals' (Jahre ist es her das ich in PHP mal ein sehr umfangreiches Hobby-Projekt erstellt hatte) erinnern das man ein 'Header' mit einer Location setzen muss. Ich erinnere mich lediglich nicht mehr wie ich das machen muss bzw. wo die Location hinzeigen soll?
    Ich habe ein paar Beispiele gefunden in anderen Threads dieses Forums bei welchen die Leute auf eine andere URL umleiten (z.B. '/login_ok.php' oder '/login_nok.php').
    Wie mache ich das aber wenn ich NICHTS ändern möchte, sich der User an beliebiger Stelle an- und ab-melden kann, der Inhalt der Seite aber der bleibt welcher er gerade ist UND der Login-Vorgang aus dem Verlauf des Browser gelöscht werden soll?

    Ich hoffe halbwegs verständlich mein Problem beschrieben zu haben und hoffe das mir hier jemand das kurz erklären kann.

    Schon einmal im Voraus vielen Dank!

  • #2
    Leite zum URL der aktuellen Seite weiter.

    header('Location: ' . $url);

    …ist noch immer die passende Syntax dafür.

    Comment


    • #3
      Ja, mit etwas probieren und try & error hat es letzendlich geklappt.
      Danke!

      Zum Thema Login & sicherheit hätte ich da noch eine weitere Frage.
      Ich weiß nie ob ich dann einen neuen Thread eröffnen soll oder hier, da es ja zusammenhängt, weiter anknüpfen soll?
      Ich probiere es mit hier weitermachen erst einmal.

      Ich habe mir nun ein Beispielscript für das Anmelden angeschaut und adaptiert mit Anpassungen an meine Vorstellungen.
      Dieses Beispielskript (https://www.php-einfach.de/experte/p...e/loginscript/) speichert in der Session einfach die User-ID des eingeloggten Useres (falls der sich erfolgreich eingeloggt hat) und fragt an allen anderen Stellen lediglich danach ob es eine SESSION-Veriable 'user_id' gibt. Wenn ja -> User eingeloggt, wenn nein -> User nicht eingeloggt (entsprechend kann man dann reagieren mit Meldugn an User, geschütze Inhalte dann nicht weiterladen usw..).

      So, meine Frage dazu jetzt: ist das üblich einfach die User-ID in die Session zu legen und als Schalter, ob man angemeldet ist oder nicht, zu nutzen? Kann man diese manipulieren? Kann der User den Wert dieser Variable ändern oder diesen selbst setzen? Wahrscheinlich mache ich mir zu viel Sorgen. Aber letztendlich kommt es mir etwas trivial vor wenn man seine Seite, die Daten der User usw. schützen möchte. Sicherheitskonzepte sind normalerweise sehr komplex das ich gar nichts blicke bei den ersten 10 Lesedurchgängen und erst dann so langsam ein Lichtlein aufgeht..

      Comment

      Working...
      X