<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.ixheim.de/index.php?action=history&amp;feed=atom&amp;title=PHP_Sessions</id>
	<title>PHP Sessions - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.ixheim.de/index.php?action=history&amp;feed=atom&amp;title=PHP_Sessions"/>
	<link rel="alternate" type="text/html" href="https://wiki.ixheim.de/index.php?title=PHP_Sessions&amp;action=history"/>
	<updated>2026-04-17T10:47:08Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Xinux Wiki</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://wiki.ixheim.de/index.php?title=PHP_Sessions&amp;diff=67709&amp;oldid=prev</id>
		<title>Thomas.will: Die Seite wurde neu angelegt: „= PHP Sessions (kurz erklärt) =  == Ziel == * Verstehen, wie PHP Benutzer „wiedererkennt“ * Grundlage für Login und Zugriffsschutz  == Grundprinzip == ;…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.ixheim.de/index.php?title=PHP_Sessions&amp;diff=67709&amp;oldid=prev"/>
		<updated>2026-03-24T18:51:35Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „= PHP Sessions (kurz erklärt) =  == Ziel == * Verstehen, wie PHP Benutzer „wiedererkennt“ * Grundlage für Login und Zugriffsschutz  == Grundprinzip == ;…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= PHP Sessions (kurz erklärt) =&lt;br /&gt;
&lt;br /&gt;
== Ziel ==&lt;br /&gt;
* Verstehen, wie PHP Benutzer „wiedererkennt“&lt;br /&gt;
* Grundlage für Login und Zugriffsschutz&lt;br /&gt;
&lt;br /&gt;
== Grundprinzip ==&lt;br /&gt;
; Erklärung&lt;br /&gt;
* HTTP ist zustandslos → jeder Request ist unabhängig&lt;br /&gt;
* Session löst das Problem durch:&lt;br /&gt;
* eindeutige ID (Session-ID)&lt;br /&gt;
* Speicherung der Daten auf dem Server&lt;br /&gt;
* Cookie im Browser als Schlüssel&lt;br /&gt;
&lt;br /&gt;
== Start einer Session ==&lt;br /&gt;
; Erklärung&lt;br /&gt;
* Jede Seite mit Login-Bezug benötigt:&lt;br /&gt;
&lt;br /&gt;
    session_start();&lt;br /&gt;
&lt;br /&gt;
* Wirkung:&lt;br /&gt;
* Neue Session wird erstellt ODER bestehende geladen&lt;br /&gt;
* PHP erzeugt/liest eine Session-ID&lt;br /&gt;
&lt;br /&gt;
== Session-ID ==&lt;br /&gt;
; Erklärung&lt;br /&gt;
* Wird als Cookie gesetzt:&lt;br /&gt;
&lt;br /&gt;
    PHPSESSID=abc123...&lt;br /&gt;
&lt;br /&gt;
* Browser sendet dieses Cookie bei jedem Request automatisch mit&lt;br /&gt;
&lt;br /&gt;
== Speicherung auf dem Server ==&lt;br /&gt;
; Erklärung&lt;br /&gt;
* Sessions liegen als Dateien auf dem Server, z. B.:&lt;br /&gt;
&lt;br /&gt;
    /var/lib/php/sessions/&lt;br /&gt;
&lt;br /&gt;
* Beispielinhalt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
user|s:5:&amp;quot;admin&amp;quot;;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Verwendung im Login ==&lt;br /&gt;
; Erklärung&lt;br /&gt;
* Nach erfolgreichem Login:&lt;br /&gt;
&lt;br /&gt;
    $_SESSION['user'] = $benutzername;&lt;br /&gt;
&lt;br /&gt;
* Wirkung:&lt;br /&gt;
* Benutzer wird „gemerkt“&lt;br /&gt;
* Zugriff auf anderen Seiten möglich&lt;br /&gt;
&lt;br /&gt;
== Zugriff auf geschützte Seiten ==&lt;br /&gt;
; Erklärung&lt;br /&gt;
* Immer zuerst:&lt;br /&gt;
&lt;br /&gt;
    session_start();&lt;br /&gt;
&lt;br /&gt;
* Prüfung:&lt;br /&gt;
&lt;br /&gt;
    if (!isset($_SESSION['user'])) {&lt;br /&gt;
        die(&amp;quot;Nicht eingeloggt&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
== Ablauf ==&lt;br /&gt;
; Erklärung&lt;br /&gt;
* Login → Session wird erstellt&lt;br /&gt;
* Browser bekommt Cookie (Session-ID)&lt;br /&gt;
* Bei jedem weiteren Request:&lt;br /&gt;
* Cookie wird gesendet&lt;br /&gt;
* PHP lädt passende Session-Datei&lt;br /&gt;
* Daten stehen wieder zur Verfügung&lt;br /&gt;
&lt;br /&gt;
== Typische Fehler ==&lt;br /&gt;
; Erklärung&lt;br /&gt;
* session_start() vergessen → Session leer&lt;br /&gt;
* Ausgabe vor session_start() → Fehler (Headers already sent)&lt;br /&gt;
* Session nicht geprüft → kein Schutz&lt;br /&gt;
* Falsche Annahme: Session liegt im Browser (tut sie nicht)&lt;br /&gt;
&lt;br /&gt;
== Kurzfassung ==&lt;br /&gt;
; Merksatz&lt;br /&gt;
* Session = Server-Speicher + Cookie als Schlüssel&lt;/div&gt;</summary>
		<author><name>Thomas.will</name></author>
	</entry>
</feed>