De:PHP Sessions
From phpCMS
[edit] Nutzung von PHP-seitigen Sessions in phpCMS
Wer nicht weiss, was PHP-Sessions sind, wofür man sie braucht oder wie man sie im allgemeinen einsetzt, braucht hier nicht weiterzulesen.
Die Nutzung von PHP-seitigen Sessions in phpCMS ist so lange kein Problem, wie man sich auf die Cookies verlässt. Muss man aber auf die 'trans_sid'-Lösung ausweichen, kommt man schnell in Probleme: PHP hängt die Session-ID nur an relative Links an, phpCMS erzeugt allerdings absolute Links - daher funktionieren die PHP-Sessions nicht in phpCMS, sobald keine Cookies vefügbar sind.
Die elegante Lösung hierfür bietet die Tag-Datei:
$sid := <!-- PAXPHP SID
echo SID;
PAXPHP SID -->
$sid_hidden := <!-- PAXPHP SID_HIDDEN
echo '<input type="hidden" name="'.session_name().'" value="'.session_id().'" />';
PAXPHP SID_HIDDEN -->
Diese Lösung ist dann auch kompatibel zur nächsten Version von phpCMS, die ein SessionHandling bekommt - sie erzeugt die Tags $sid und $sid_hidden (als Hidden Field in Formularen).
Die entsprechenden Tags muss man dann einfach nur noch dort einsetzen, wo sie gebraucht werden. Dies functioniert natürlich auch in Menüdateien, das Caching bleibt aber leider außen vor - bei Seiten, die über Sessions gesteuert werden, ist globales Caching allerdings eher nicht zu erwarten - statische Seiten benötigen keine Sessions.
Basiert auf einem Thread aus dem phpCMS Supportforum
Main Page: Tutorials MainPage | Top Page: De:MiniHowTos
This page in other languages: English

