sessions weitergeben
till
- php
Hallo forum!
ich habe eine benutzerverwaltung in php mit mysql programmiert.
folgendes procedere:
der user gibt username und passwort ein, existiert ein eintrag wo username und passwort übereinstimmt, lese ich die rechte des users aus. diese rechte lade ich in die session. sie sind von nun an dort zu lesen.
im navifation.inc.php file frage ich ab, welche rechte ein user hat. wenn ein recht auf "yes" gesetzt ist, gebe ich den navigationspubkt frei. so bekomme ich eine korrekte navigationsleiste anhand der vergeben rechte.
was mich total wundert:
ich übergebe in keinem link die session id und die navigation stimmt immer?!?! eigentlich dachte ich, etwas wie
<a href="#php?<?=session_name()."=".session_id()?>"> übergeben zu müssen, aber es geht auch ohne und die session ist auf jeder seite da, die navigation stimmt!
kann mir das jemand mal erklären!
danke!
Also, in der Datei php.ini kann man einstellen,
dass die Session-Id automatisch hinter die Links
gesetzt wird.
Wunder soll man nicht hinterfragen, sondern ausnutzen!
Hallo,
was mich total wundert:
ich übergebe in keinem link die session id und die navigation stimmt immer?!?! eigentlich dachte ich, etwas wie
<a href="#php?<?=session_name()."=".session_id()?>"> übergeben zu müssen, aber es geht auch ohne und die session ist auf jeder seite da, die navigation stimmt!
PHP übergibt die session_id automatisch falls es mit "--enable-trans-sid" kompiliert wurde (bzw. "session.use_trans_sid" in der php.ini auf "on" gesetzt ist). Dies ist ab PHP 4.2.x defaultmäßg der Fall.
siehe http://www.php.net/manual/en/ref.session.php - besonders den Abschnitt "Passing the Session ID" (ziemlich am Schluss).
Gruß,
dimde