Heinrich: Session in PHP

Hallo,

Es ist bei mir folgendes Problem. Ich verwende die Sessions. An einer PHP-Seite rufe ich:

$varName = 100;
session_start();
session_register("varName");

es wurde eine session-Datei auf der Festplatte erzeugt.
In der Datei steht jedoch nur:

varName|N;

Die Variable wurde in der Session registiert, die Wert jedoch nich gespeichert. Warum ???

Bitte um hilfe

Heinrich

  1. Hallo Heinrich,

    session_register("varName");

    Diese Funktion ist veraltet, verwende das Array $_SESSION, hier also $_SESSION['varName'] = $varName; bzw. gleich $_SESSION['varName'] = 100;

    Grüße aus Nürnberg
    Tobias

  2. Hello,

    $varName = 100;
    session_start();
    session_register("varName");

    es wurde eine session-Datei auf der Festplatte erzeugt.
    In der Datei steht jedoch nur:

    varName|N;

    Die Variable wurde in der Session registiert, die Wert jedoch nich gespeichert. Warum ???

    Die Reihenfolge ist schuld.
    Du legst eine Variable an.
    Mit session_register() holst Du die Variable dann aus der Sessiondatei. Da sie aber noch nicht drinstand, wird ihr Wert mit NULL angenommen und die Variable wird neu angelegt, also überschrieben.

    Tobias hat Dir aber schon den Hinweis gegeben, dass Du session_register() & Co (Bitte Manual selber lesen) nicht mehr benutzen sollst.

    also

    1. Session starten, dadurch wird das Array $_SESSION (wieder-)hergestellt
    2. Variablen ggf. neu anlegen oder reinitialisieren
    3. beim Scriptende werden automatisch alle Elemente des Arrays $_SESSION in der
       Sessiondatei gespeichert.

    Du musst Dich also um nichts mehr kümmern, als die Session rechtzeitig zu starten und das richtige Array zu benutzen.

    Harzliche Grüße vom Berg
    http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau