Sönke Tesch: Login mit Userabhaengiger Nutzerfuehrung

Beitrag lesen

Eine Fräge: Ich kann dann au die $_SESSION[] von jeder der nachfolgend verlinkten Dateien wieder zugreifen, ohne dass ich sie mit ?variable[1]=blablabla&... an die URL ranhaenge?

Ja. Das ist der Sinn der ganzen Session-Geschichte: Die Daten verbleiben auf dem Server (identifiziert über die Session-ID) anstatt über die URL ($_GET) oder ein Formular ($_POST) ständig hin- und hergeschoben zu werden. Diese Schieberei verbraucht erstens Bandbreite und -viel schlimmer- macht zweitens die Daten manipulierbar.

Und der Browser greift ganz automatisch auf die session-id zurueck?

Jein, im Prinzip richtig, aber verkehrte Richtung. Beim Start einer Session würfelt der PHP-Interpreter die Session-ID aus, markiert alle Variablen, die gespeichert werden sollen, mit diesem Code, speichert die Variablen auf dem Server und schickt den Code (und nur den Code) als Cookie an den Browser.
Der Browser macht eigentlich gar nichts, außer das er jedesmal beim Abrufen eines Objekts stur alle zur jeweiligen URL passenden Cookies zurück an den Server schickt - daß da irgendwas mit einer Session läuft, bemerkt er nicht.
Der PHP-Interpreter allerdings schaut nach Aufruf von session_start() in dieser Cookieliste nach einem Sessioncookie (erkennbar am Namen PHPSESSID o.ä.) und, falls es da ist, stellt die Variablen, die mit dem im Cookie gesendeten Code markierten sind, wieder her.

Hört sich vielleicht kompliziert an, ist aber ansich recht simpel.

Gruß,
  soenk.e