Die allwissende Müllhalde: Wie sicher sind Cookies?

Beitrag lesen

sagen wir, ich würde die Session Id in einem Cookie auf dem Pc des Users speichern, wie würde ich diese dann wieder aufnehmen?
mit session_start($session_id) oder wie?

PHP verarbeitet Sessions automatisch. session_start() reicht vollkommen, um $_SESSION[] zu füllen, und Cookies werden normalerweise sowieso verwendet.

Für den dauerhaften Login wirst Du mit Sessions aber nicht glücklich werden, da die Sessiondaten vom Server nach einer Weile Nichtnutzung automatisch gelöscht werden. Dies zu ändern wäre nicht unbedingt klug, weil sich dann sehr schnell sehr viel Datenmüll auf dem Server anhäuft.

Benutze stattdessen setcookie(), um den Benutzernamen (und nur den Benutzernamen) in einem separaten, dauerhaften Cookie zu speichern. Dieser lässt sich später über $_COOKIE[] schnell und einfach auslesen. Achte aber darauf, daß mit diesem Cookie nur lesender Zugriff möglich ist, schreibender Zugriff in jedem Fall die Passwortangabe und den Login per Session erfordert.