phpbar.de logo

Mailinglisten-Archive

[php] $_SESSION['xxx'] geht verloren

[php] $_SESSION['xxx'] geht verloren

Ringo Großer swek at gmx.net
Son Jan 8 19:36:52 CET 2006


Hallo Dieter,

Dieter Huber wrote:
> Verzichte ich (zu Testzwecken) auf header(...) und schreibe
> test1.php:
> <?php session_start();
>  $_SESSION['SessID_test1'] = session_id();
>  $_SESSION['testtext'] = 'Das ist ein Texttest.';
> <HTML>
> <BODY>
>  <FORM ACTION="test2.php" METHOD="POST">
>    <INPUT TYPE="Submit" VALUE="weiter" />
>  </FORM>
> </BODY>
> </HTML>
>
> dann werden die Daten in $_SESSION auch nicht übernommen.

Nochmal phpinfo();
Mein lokaler XAMPP, der out-of-the-box installiert wurde zeigt mir
session.use_trans_sid 0 0
Heißt soviel, wie: PHP wird keine URLs rewriten und die sessionid
selbständig anhängen. Weder in Hyperlinks noch Formularactions
und in header('Location:...'); sowieso nicht. Alle für PHP ggf.
rewrite-baren Tags findest du in der phpinfo hinter url_rewriter.tags
Das erstmal zur Erklärung deines obigen Szenarios unter der
Annahme, dass Cookies nicht benutzt werden (können).

Zum Thema lokale Erreichbarkeit und URL bekannt machen:
Du hast einen vollwertigen Webserver auf deiner Maschine laufen.
Wenn deine Firewall den Port 80 zulässt und ein eventueller Router
diesen ordnungsgemäß forwarded, dann kann jeder, dem deine
aktuelle WAN-IP bekannt ist, von außen auf diesen Webserver
zugreifen. Auf diesem Wege könnte man mal dein Script und die
Reaktion auf einem anderen Client testen.

Dein Script funktioniert bei mir unter XAMPP 1.5 übrigens problemlos.
Das Cookie wurde im Falle der header Weiterleitung gesetzt und
der Inhalt von $_SESSION['testtext'] kommt auf der zweiten Seite an.

regards, Ringo 


php::bar PHP Wiki   -   Listenarchive