Session gehen nicht ! Keine Variante !

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

  • Session gehen nicht ! Keine Variante !

    Hallo habe ein dringendes Problem:
    Habe einige Session-Versuche gestartet nichts geht.
    Mein Webspace ist bei 1und1. PHP 5.2 ist eingestellt.

    Wenn ich eine Session starte und auf die nächste Seite gehe, dann steht im als Adresse zwar die SessionNummer die ich übermittelt habe.
    Aber mit dem Befehl: (echo "<br>Session-ID: " . SID kommt eine andere Nummer auch mini codes wie:

    Seite 1:

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <link href="css/style.css" rel="stylesheet">
    <title>Für Freunde</title>
    </head><body><?php
    session_start();
    $_SESSION["vorname"] = "Matthias";
    echo '<br><a href="test_erg.php?' . SID . '">Zur Ausgabe</a>';
    echo "<br>Session-ID: " . SID;
    echo $_SERVER['SERVER_NAME'];
    ?></body>
    </html>

    Seite 2 (test_erg.php):
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <link href="css/style.css" rel="stylesheet">
    <title>Für Freunde</title>
    </head><body><?php
    session_start();
    echo $_SESSION["vorname"];
    echo "<br>Session-ID: " . SID;
    ?></body>
    </html>

    gehen nicht.

  • #2
    Session_start() MUSS vor allen Ausgaben stehen,
    Das sagt auch das Handbuch.
    Wir werden alle sterben

    Kommentar


    • #3
      also jetzt nicht bitte vor JEDE ausgabe einer session variable session_start() benutzen :-D

      meist gibt es eine config.php für DB informationen, dort einfach ein session_start() mit rein und du bist glücklich.

      und ich würde keine session variable mit GET übermitteln, kann böse ins auge gehen.

      und geb einfach mal ein paar infos aus, evtl siehst du dann ja schon dein problem.
      PHP-Code:
      echo "<pre>"nur zur Formatierung
      var_dump
      ($_SESSION);
      echo 
      "</pre>"
      Gruß
      Uzu

      private Homepage

      Kommentar


      • #4
        session_start() nur einmal aufrufen. Davor darf keine Ausgabe gemacht werden. Sobald du auch nur eine einzige Ausgabe gemacht hast, sind Funktionen wie session_start(), header(), etc. tabu.

        Kommentar


        • #5
          Danke !!!!!

          Danke an alle,
          die mir geantwortet haben.

          Mir war nicht ganz klar das mit
          "Session_start() MUSS vor allen Ausgaben stehen"
          ach der head-bereich gemeint ist.
          Ausgabe fängt ja eigentlich erst bei body an.
          Jedenfall klappt es jetzt. Danke !

          Kommentar


          • #6
            Ausgabe fängt ja eigentlich erst bei body an.
            Bei dem HTML Body?
            Nein!
            Bei dem HTTP Body.
            Und dazu gehört eben auch der HTML head.

            Mache dich bitte mit dem HTTP vertraut.
            Cookies und eben auch Sessioncookies werden in den HTTP Headern gesendet.
            Das HTML folgt viel später.
            Zuletzt geändert von combie; 10.04.2013, 22:11.
            Wir werden alle sterben

            Kommentar


            • #7
              Zitat von Wolfgang-O Beitrag anzeigen
              Ausgabe fängt ja eigentlich erst bei body an.
              Es geht nicht um die Ausgabe vom Browser, sondern um die Ausgabe vom Webserver, also von PHP. PHP hat mit HTML nicht wirklich was zu tun. PHP kann zwar HTML-Code ausgeben, aber es interessiert sich nicht dafür.

              Wenn bei der PHP-Programmierung von Header und Body gesprochen wird, sind nicht die HTML-Header/Body, sondern die HTTP-Header/Body gemeint.

              Siehe: Hypertext Transfer Protocol ? Wikipedia

              Kommentar

              Lädt...
              X