session läuft nicht :-(

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

  • session läuft nicht :-(

    Hallo Leute,

    ich hoffe, ihr könnt mir helfen:
    Ich versuche, eine einfache session laufen zu lassen:
    1. datei:
    <?php
    session_start();
    session_save_path("./save");
    ...
    $uid = 2;
    $name = "Nachname";
    $vorname = "sonstwas";
    session_register("uid","name","vorname");
    header("Location:./index.php");
    ?>

    2. Datei
    <?php
    session_start();
    if ($uid == 0)
    {
    ...

    Aber er machts nicht. $uid ist immer 0 und die anderen leer, es kommt auch keine Fehlermeldung...
    Der Save-Path existiert auch
    Was mache ich falsch??
    Kann das daran liegen, dass der beim "header"-Aufruf die Session rausschmeisst?

    thx für eure Hilfe.
    mfg,
    KaZaK

  • #2
    teste das mal bitte so. (neuer syntax)


    auch DU DARFST die php.tags verwenden.


    1. datei: (datei1.php)
    PHP-Code:
    <?php
    session_start
    ();
    session_save_path("./save");
    ...
    $_SESSION['uid'] = 2;
    $_SESSION['name'] = "Nachname";
    $_SESSION['vorname'] = "sonstwas";

    header("Location: datei2.php");
    ?>
    2. Datei (datei2.php)
    PHP-Code:
    <?php
    session_start
    ();

    echo 
    '<pre>';
    print_r($_SESSION);
    echo 
    '</pre>';
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Hi Abraxax,
      danke für die Antwort.

      So bekomme ich die Daten jetzt in die zweite Datei rein.
      Also bei dem
      PHP-Code:
      print_r($_SESSION); 
      gibt er alle richtig aus. Allerdings hab ich die nicht in den entsprechenden Variablen. Wie bekomme ich die da jetzt einzeln rein? Müssten die nicht automatisch drin sein?

      mfg,
      KaZaK
      ps: thx, dass ich die tags auch benutzen darf...

      Kommentar


      • #4
        Poste doch aml den print_r, wenns geht mit <pre></pre>.
        Ich zuminderst versteh nach einem bier nicht was du meinst.

        gruss timepoint5
        Möglich ist alles!

        Kommentar


        • #5
          Hi,
          der print_r bringt folgende Ausgabe:

          Code:
          Array
          (
              [uid] => 2
              [name] => test
              [vorname] => sonstwas
          )
          Allerdings sind die Variablen $uid, $name und $vorname nach wie vor leer...
          Wenn ich Latein könnte, wäre ich jetzt mit diesem am Ende..

          mfg,
          KaZaK

          EDIT:
          code.tags by Abraxax
          Zuletzt geändert von Abraxax; 26.09.2003, 20:27.

          Kommentar


          • #6
            Original geschrieben von KaZaK
            Allerdings sind die Variablen $uid, $name und $vorname nach wie vor leer...
            natürlich sind die leer. die gibt es ja auch nciht...

            mache mal
            PHP-Code:
            echo $_SESSION['uid']; 
            usw.

            $_SESSION ist ein superglobales array. dort sind alles daten der session enthalten, die du dort einträgst. das session_register() darfst du auch nicht mehr verwenden. das ist veraltet.

            also noch einmal ...
            PHP-Code:
            // in die session schreiben.
            $_SESSION['demoindex'] = 'demoinhalt';

            // und die ausgabe mit
            echo $_SESSION['demoindex']; 
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              OffTopic:
              Original geschrieben von KaZaK
              ps: thx, dass ich die tags auch benutzen darf...
              tja. so bin ich eben..
              auch hindern wir nicht nicht, die code-tags ebenfalls zu nutzen...
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #8
                Hi,

                ok, euch vielen Dank...ich glaub ich muss unbedingt schlafen gehen...
                Auf die Idee
                PHP-Code:
                $uid $_SESSION['uid']; 
                bin ich auch schon gekommen. Allerdings hab ich Idiot danach kein echo mehr gesetzt...*schäm*
                Aber eine Sache hab ich noch dazugelernt: Wer müde ist, soll nicht proggen...

                euch nochmal vielen Dank,
                KaZaK

                Kommentar


                • #9
                  warum machst du denn extra eine zuweisung zu der neuen var $uid ? das brauchst du nicht machen. du kannst direkt das session-array nehmen.

                  vorteil.... wenn sich $_SESSION['uid'] ändert, wird es in der session automatisch geändert.

                  nachteil.... wenn du nur $uid verwendest, wird in der session nix geändert. es sei denn du änderst es auch noch da. also schon eine zeile code mehr...
                  INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                  Kommentar


                  • #10
                    hmmm, ist ne Überlegung wert...
                    die Variable kommt zwar so noch ca. 50 mal vor, aber das kann ich ja ersetzen...

                    mfg,
                    KaZaK

                    Kommentar


                    • #11
                      ne. wenn du das schon alles fertig hast, ist das schon ok. du musst dann nicht unbedingt alles ändern.

                      denke aber nur daran, die daten in der session zu aktuallisieren, wenn du $uid änderst.
                      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                      Kommentar


                      • #12
                        Original geschrieben von KaZaK
                        Hi,

                        ok, euch vielen Dank...ich glaub ich muss unbedingt schlafen gehen...
                        Auf die Idee
                        PHP-Code:
                        $uid $_SESSION['uid']; 
                        bin ich auch schon gekommen. Allerdings hab ich Idiot danach kein echo mehr gesetzt...*schäm*
                        Aber eine Sache hab ich noch dazugelernt: Wer müde ist, soll nicht proggen...

                        euch nochmal vielen Dank,
                        KaZaK

                        also es gibt noch:
                        PHP-Code:
                        if (!empty($_SESSION)) { extract($_SESSION); } 
                        dann macht der aus $_SESSION['uid'] automatisch $uid
                        ist aber nicht sauber und andere werden gnadenlos überschrieben
                        mfg

                        Kommentar

                        Lädt...
                        X