Enrico: Session wird nicht übergeben

Hallo,

tut mir leid, das Thema "Sessions" wieder aufgreifen zu müssen, aber ich bekomme es einfach nicht hin.

Ich habe folgenden Ablauf:

Gaestebuch__Einstieg.php (Anzeige der Einträge, Button zum Eintragen)
|
+-> Gaestebuch__Eintragen.php (eigentliches Formular)
    |
    +-> Gaestebuch__Validierung.php (Validierung der Eingaben, Vorschau)
        |
        +-> Gaestebuch__Speichern.php (letztendliche Übernahme in Textdatei)
            |
            +-> Gaestebuch__Dankesseite.php

Wenn ich die Systematik der Sessions richtig verstanden habe, dann muss ich auf jeder Seite, auf der ich mittels einer eindeutigen ID sicherstellen will, dass keine Konflikte bei den Zugriffen kommt, zu Beginn der Seiten "session_start ();" schreiben.

Das habe ich aktuell bei den Seiten "Gaestebuch__Eintragen.php" und "Gaestebuch__Validierung.php" gemacht, die Seiten "Gaestebuch__Speichern.php" und "Gaestebuch__Dankesseite.php" bestehen noch nicht, da ich momentan ja noch bei meinem Session-Problem festhänge.

Wenn ich mir aber nun auf der Seite "Gaestebuch__Validierung.php" das Session-Array mit "echo var_dump($_SESSION);" testweise ausgeben lasse, dann bekomme ich nur die Anzeige "array(0) { }", d.h., die Session wurde nicht übergeben. Dass das Array nicht übergeben wird, wird mir dadurch bestätigt, dass ich auf der Ursprungszeite, also auf der Seite, auf der ich die Session-Variablen belege, sehr wohl Werte ausgegeben werden.

-------------------------
Gaestebuch__Eintragen.php
-------------------------

<?php
session_start();

$_POST ['Name']      = (isset ($_POST ['Name']))      ? $_POST ['Name']      : "";
   $_POST ['eMail']     = (isset ($_POST ['eMail']))     ? $_POST ['eMail']     : "";
   $_POST ['Homepage']  = (isset ($_POST ['Homepage']))  ? $_POST ['Homepage']  : "";
   $_POST ['Nachricht'] = (isset ($_POST ['Nachricht'])) ? $_POST ['Nachricht'] : "";
   $_Session ['Token']  = (isset ($_SESSION ['Token']))  ? $_SESSION ['Token']  : md5 (uniqid (rand (), true));
   $_Session ['Start']  = date ("His");

?>
<!doctype html>
<html lang="de">
   <head>
      ...
   </head>
   <body>
      ...
      <form name="Formular" action="Gaestebuch__Validierung.php" method="post">
         <dl>
            <dt class="Label__Name"></dt>
            <dd class="Name">
               <input name="Name" value="<?php echo $_POST ['Name']; ?>">
            </dd>
            <dt class="Label__eMail"></dt>
               ...
         </dl>
         <input type="submit" class="Vorschau" value="">
         <input type="reset" class="Loeschen" value="">
      </form>
      ...
   </body>
</html>

Die Schaltflächen haben deswegen keine Values, da ich hier mit Grafiken arbeite.

---------------------------
Gaestebuch__Validierung.php
---------------------------

<?php
session_start ();

echo var_dump($_SESSION);

?>
<!doctype html>
<html lang="de">
   <head>
      ...
   </head>
   <body>
      ...
   </body>
</html>

Vom Aufbau müsste doch soweit richtig sein, auch konnte ich im Internet keine "anderen" Systematiken finden.

Warum wird die Session nicht übergeben?

Ich arbeite mit XAMPP v1.7.4 auf PHP 5.3.5.

Vielen Dank und Gruß
Enrico

  1. Hallo,

    bitte beachte, dass $_Session und $_SESSION verschiedene Variablen sind ...

    Grüße
    Erik

    1. Hallo Erik,

      Mann, Mann, Mann, auf diesen blöden Fehler meinerseits wäre ich nicht (mehr) gekommen, nachdem ich den Code immer und immer wieder durchgelesen habe.

      Danke für Deine Hilfe :-)

      Grüße
      Enrico

      1. Gern geschehen!

        Grüße
        Erik