PHP Loginsystem -> Bei nicht eingeloggt immer zur Login Seite geleiten werden. Wie geht das genau?

2 Antworten

PHP weiß nicht, ob der Tab offen ist oder nicht. PHP wird auf dem Server ausgeführt, nicht beim Client / Nutzer.

Das was dem Ganzen noch am Nächsten kommt, sind Session-Cookies. Die werden in den meisten Browsern gelöscht, wenn der Browser geschlossen wird. Siehe PHP-Dokumentation dazu.

Ganz einfache Implementation: Wenn der Nutzer sich einloggt, wird ein Session-Cookie mit bspw. der User-ID gespeichert. Jedes Mal, wenn der Nutzer auf eine geschützte Seite geht, wird überprüft, ob eine User-ID gespeichert ist und ob diese in der Datenbank vorhanden ist. Falls ja, alles gut, falls nicht, wird die Session gelöscht (session_destroy()) und zum Login zurück geleitet. Wiederum, wenn der Nutzer auf die Login-Seite geht, aber eine gültige Session vorhanden ist, wird der Nutzer in den geschützten Bereich weitergeleitet.

Woher ich das weiß:Berufserfahrung – Inhaber einer App-Agentur & 15+ Jahre Programmiererfahrung