Mir fehlt der Ansatz.
Was implementieren und was vergleichen?!
Na ja, mit PHP waere das Rezept etwas folgendes:
1.: Ein User, der sich einloggen koennen soll, muss erstmal als solcher existieren. Es muessen also die User erzeugt werden (etwa durch eine Registrierung) und die Daten, die Du spaeter brauchst (zumindest Username und Passwort, ggf. Zugangsrechte u.s.w.) gespeichert sein. Das Mittel der Wahl zum Speichern sollte eine Datenbank sein.
2.: Ein User kann sich irgendwie einloggen. Dazu gibt er Usernamen und Passwort in ein Formular ein, und das empfangende Skript prueft die Eingaben durch Abgleich mit den vorhandenen Userdaten. Das kann auf einer eigenen Login-Seite sein, oder ueber ein kleines Formular, das auf jeder Seite - sofern noch nicht eingeloggt - angeboten wird, oder sonstwie. Eine Loesung, die ohne Redirects auskommt, finde ich persoenlich erheblich besser.
3.: Wenn ein User sich eingeloggt hat, dann wird dies durch Setzen eines geeigneten Feldes des $_SESSION-Arrays gespeichert. Dazu muss natuerlich die Session existieren - ob sie erst nach dem Login gestartet wird oder jeder Besucher der Seite gleich eine Session bekommt, haengt davon ab, ob Du fuer nicht eingeloggte Besucher eine Verwendung fuer die Session hast. Dies koennte zum Beispiel der Fall sein, wenn Du eine Sprachauswahl fuer die Website oder andere Einstellungen anbietest, die ueber mehrere Requests erhalten bleiben sollen.
4.: Jedes PHP-Skript, das eine Webseite ausgibt, besitzt eine Variable, deren Wert aussagt, ob die Seite fuer nicht eingeloggte Besucher zugaenglich sein soll oder nicht. Ggf. etwas detaillierter, welche Zugangsrechte zur Einsicht noetig sind. Und eine Funktion, die bei jedem Skript zu Beginn aufgerufen wird, gleicht diese Bedingungen mit dem Loginstatus in der Session ab und entscheidet, ob der User berechtigt ist, die Seite zu sehen. Wenn die Antwort "Nein" ist, dann muss es entprechend reagieren: Eine Meldung, dass der Zugang verweigert wurde, ein Redirect zu einer Login-Seite oder gleich die Ausgabe eines Login-Formulars o.ae. Und ausserdem verhindern, dass der Rest der eigentlichen Seite ausgegeben wird.
Viele Gruesse,
der Bademeister