PHP Session nicht automatisch beenden?
Moin moin, ich bin gerade am Bau einer Website. Nun kann man sich bei mir registrieren und einloggen. Allerdings wird, wenn man die Seite schließt und nach paar minuten wieder öffnet, automatisch abgemeldet. Also die Session wurde automatisch beendet. Wie kann ich es nun so machen, dass die session dauerhaft bestehen bleibt, ohne dass ich z.B. beim Login Formular die Option "eingeloggt bleiben" hinzufügen muss?
Ich bedanke mich schon mal im Voraus
2 Antworten
Die Session ist natürlich beendet wenn du die Verbinding beendet.
Den Login musst du dir in einem extra Cookie speichern.
Solange die Cookies also nicht ablaufen oder gelöscht werden oder Manuell ausgelockt wird und das Cookie gelöscht wird bleibt man dann eingeloggt.
Aber Achtung:
Nicht das Passwort im das Cookie schreiben!
PHP Sessions enden tatsächlich mit dem Schließen des Browsers. Daher musst du die Session in einem Cookie speichern, dessen Gültigkeit länger ist als der Session Cookie und die Session daraus wiederherstellen.
Google einfach nach PHP angemeldet/eingeloggt bleiben. Denn der Standard PHP Session-Cookie verfällt nach Schließen des Browers.
Ja, im Detail hast du natürlich recht. Der Cookie beinhaltet die SessionID und der Server die zugehörigen Daten. Aber eine Session, die nicht mehr wiederherstellbar ist, ist nun mal verloren. Ob nun serverseitig expired oder nicht.
die php session endet natürlich nicht mit dem schließen der seite/browsers , weil die php session gar nicht im browser gespeichert ist sondern auf dem server persistent gespeichert ist , das problem ist aber dem server beim nächsten aufruf mitzuteilen welche session gemeint ist und da kommt der cookie ins spiel . session time out ist dann deine server seitige einstellung, die besagt wann sessions auf dem server gelöscht werden .