kerstel: Session

Hallo,

wenn ich folgenden Code habe:

session_start();

$_SESSION['test']=$_POST['test'];

ist dann die session variable "test" gleich gespeichert oder muss ich sie mit session_register('test') extra registrieren? wenn sie gleich gespeichert ist, wie deregistrier ich sie dann wieder? mit session_unregister() ?

Danke und Gruß

Kerstel

  1. Hallo,

    wenn ich folgenden Code habe:

    session_start();

    --> hier muss meiner Meinung nach, noch session_register("test"); auf jeden Fall rein, denn sonst wird die Variable nicht an die Session gebunden

    $_SESSION['test']=$_POST['test'];

    damit weisst Ihr den Wert zu (ginge auch mit $test = $_Post['test'];)

    ist dann die session variable "test" gleich gespeichert oder muss ich sie mit session_register('test') extra registrieren? wenn sie gleich gespeichert ist, wie deregistrier ich sie dann wieder?

    mit session_unregister() ?  --> genau

    Danke und Gruß

    gruss zurück
    romy

    Kerstel

    1. Hallo,

      wenn ich folgenden Code habe:

      session_start();

      --> hier muss meiner Meinung nach, noch session_register("test"); auf jeden Fall rein, denn sonst wird die Variable nicht an die Session gebunden

      Mit dem neuen PHP nicht mehr. Da reicht diese Zeile:

      $_SESSION['test']=$_POST['test'];

      damit weisst Ihr den Wert zu (ginge auch mit $test = $_Post['test'];)

      Nein, das klappt nicht immer. Variablen sollte man immer korrekt scope-n, d.h. Post-Variablen und Session-Variablen etc. immer komplett ansprechen.

  2. Hallo,

    session_start();

    $_SESSION['test']=$_POST['test'];

    ist dann die session variable "test" gleich gespeichert oder muss ich sie mit session_register('test') extra registrieren?

    Die Zeile ist voll in Ordnung so.

    wenn sie gleich gespeichert ist, wie deregistrier ich sie dann wieder? mit session_unregister() ?

    Nope - mit unset ($_SESSION['test']);

    Merke: $_SESSION _nie_ in Verbindung mit session_*register* verwenden:

    Statt session_register ('variable');
      $_SESSION['variable'] = ...;
    Statt session_is_registered ('variable')
      isset($_SESSION['variable'])
    Statt session_unregister ('variable');
      unset ($_SESSION['variable']);

    Grüße,

    Christian