Session Problem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Session Problem

    Guten Tag!

    Mein Session Array ist leider leer, ich kann mir dies nicht erklären..

    Folgendes Problem:

    seite1.php:

    PHP-Code:
    session_start();
    $_SESSION['filesamplezip']=$filesample// Als Session Array speichern
    echo $_SESSION['filesamplezip'][2];
    echo 
    "<a href=\"seite2.php\">Link zu Seite 2</a><br><br>"
    So das Array filesample existiert. Das echo der Session ist auch erfolgreich... Also es wird dort der richtige Wert übergeben und $filesample ist auch gefüllt, da dieses vorher im Code wiedergegeben wird.

    seite2.php:
    PHP-Code:
    session_start();
    $filesample $_SESSION['filesamplezip'];
    echo 
    $filesample[2]; 
    Jetzt ist das Array leer, ich kann mir nicht erklären wieso.

    Vielen Dank im Vorraus

    lg

  • #2
    PHP-Code:
    $_SESSION['filesamplezip']=$filesample
    Das kann nicht funktionieren da du $filesample in dieser Datei nicht gesetzt hast.[COLOR=#000000][COLOR=#006600][/COLOR][/COLOR]

    Kommentar


    • #3
      Ich würd zuerst gern mal wissen, ob dein error_reporting ganz aufgedreht ist!

      @matt_dominik
      Ich vermute mal, dass seine seite1.php nicht nur aus diesen vier Codezeilen besteht und $filesample durchaus irgendwo weiter oben schon als Array deklariert und gefüllt wurde.
      Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
      Schön - etwas Geschichte kann ja nicht schaden.
      Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

      Kommentar


      • #4
        dann gehört session_start() weiter rauf.

        @Quetschi
        falls das so ist wie skaminista gesagt hat, kannst du dann den ganzen Code posten?

        Kommentar


        • #5
          Guten Tag!

          Ja das $filesample ist gefuellt! Und ich habe fürs error error_reporting(E_ALL); an...

          //Nachtrag:

          Der ganze Code ist:
          PHP-Code:
          session_start();
          $filesample $_POST['filesample']; // Array annehmen
          $_SESSION['filesamplezip']= $filesample// Als Session Array speichern
          $anzahlfilesample count($filesample);
          echo 
          $_SESSION['filesamplezip'][2]; 
          So, ich habe jetzt das POST auch direkt als Session gemacht und nicht ueber den Umweg dass ich zuerst die Post definiere und dann die Session, aber keine Veraenderung... Der Code beinhaltet noch weitere Zeilen die aber irrelevant für das Problem sind (zip funktion usw.). Die Session start ist allerdings die 1. Zeile in meinem Code!

          lg
          Zuletzt geändert von skaminista; 19.03.2012, 18:56. Grund: Nachtrag

          Kommentar


          • #6
            Was sagt ein var_dump($_SESSION); in deiner seite2.php?

            Wenn da gar nix daherkommt und du trotz aufgedrehtem error_reporting (display_errors ist auch an?) keinen Fehler bekommst, dann würde ich spontan mal drauf tippen, dass du Cookies in deinem Browser deaktiviert hast. Wenn auch das nicht der Fall ist, würd ich mal die HTTP-Header mit einem für deinen Browser passenden Tool mitlesen oder es stimmt was nicht mit deinem Session-Save-Handler.
            Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
            Schön - etwas Geschichte kann ja nicht schaden.
            Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

            Kommentar


            • #7
              @Quetschi:

              Error habe ich durch folgende Zeilen an:
              PHP-Code:
              error_reporting(E_ALL);
              ini_set('display_errors''1'); 
              Cookies sind auch erlaubt! Ich hab leider nur ftp zugang zu dem Server :-/...

              var_dump($_SESSION); sagt mir folgendes:

              array(0) { }

              lg

              Kommentar


              • #8
                Speicher dir das mal so ab und ruf session1.php und session2.php nacheinander auf - bleibt es bei dir hier tatsächlich in session2.php bei der anzeige eines leeren Arrays?

                session1.php
                PHP-Code:
                <?php

                error_reporting
                (E_ALL); 
                ini_set('display_errors'1);

                session_start();
                $_SESSION["Bla"] = "Blub";

                ?>

                session2.php
                PHP-Code:
                <?php

                error_reporting
                (E_ALL); 
                ini_set('display_errors'1);

                session_start();
                var_dump($_SESSION);

                ?>
                Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                Schön - etwas Geschichte kann ja nicht schaden.
                Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                Kommentar


                • #9
                  Oh man, ist erledigt. Ich hatte die session_start(); ganz am Anfang im <body> Bereich. Wusste nicht, dass dies falsch ist. Tut mir Leid, aber vielen Dank für eure Hilfe.
                  Für alle Anderen mit dem gleichen Problem, session_start(); muss vor dem <html> tag sein.

                  lg und Vielen Dank an euch!

                  Kommentar


                  • #10
                    Dann hattest du das error_reporting in dem Script nicht drin - das hätte dir ansonsten einen Fehler gemeldet!
                    Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                    Schön - etwas Geschichte kann ja nicht schaden.
                    Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                    Kommentar


                    • #11
                      Zitat von Quetschi Beitrag anzeigen
                      Dann hattest du das error_reporting in dem Script nicht drin - das hätte dir ansonsten einen Fehler gemeldet!
                      Die Beiden Zeilen hatte ich in beiden drinn:

                      [COLOR=#000000][COLOR=#0000CC]error_reporting[/COLOR][COLOR=#006600]([/COLOR][COLOR=#0000CC]E_ALL[/COLOR][COLOR=#006600]);
                      [/COLOR][COLOR=#0000CC]ini_set[/COLOR][COLOR=#006600]([/COLOR][COLOR=#CC0000]'display_errors'[/COLOR][COLOR=#006600], [/COLOR][COLOR=#CC0000]'1'[/COLOR][COLOR=#006600]); [/COLOR][/COLOR]

                      Kommentar


                      • #12
                        Vermutlich waren die Fehlermeldungen dann im Html-Quelltext an einer Stelle, an der sie auf der gerenderten Seite nicht sichtbar wurden.
                        Bitte nächstes Mal auch in der Quelltextansicht nach Fehlermeldungen suchen
                        Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                        Schön - etwas Geschichte kann ja nicht schaden.
                        Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                        Kommentar

                        Lädt...
                        X