Doreen: Session funzt nicht

Hi!

Hab ein Problem bei dem ich absolut nicht weiterkomme.
Ich habe eine Session gestartet und dann Werte registriert, allerdings sind auf der Folgeseite die Werte nicht mehr abrufbar. Die Sessiondatei auf dem Server ist auch leer.
Hier mal mein Code:

erste Seite:

session_start();
if (!isset($_SESSION['nid']))
    $_SESSION['nid'] = $chara[0];
if (!isset($_SESSION['username']))
    $_SESSION['username'] = $chara[1];
if (!isset($_SESSION['gs']))

zweite seite:

session_start();
include '../inc/zugang.inc.php';
include '../inc/funktionen.inc.php';
echo $_SESSION['username'];
echo $_SESSION['nid'];
echo $_SESSION['gs'];

die ausgaben bleiben leer...allerdings erst nachdem ich meine Seiten strukturiert und geordnet habe. also mit mehreren Unterordnern..vorher funktionierte es einwandfrei

  1. session_start ist der erste Befehl in deinen Skripten?
    $chara[n] ist definiert?

    1. session_start ist der erste Befehl in deinen Skripten?
      $chara[n] ist definiert?

      beidesmale ja...wie gesagt, es hatte ja funktioniert anfangs, allerdings nachdem ich eine struktur reinbringen wollte, hab im quelltext dazu nur die pfade von include und links angepasst funktionierte es nicht mehr...witzigerweise komme auch noch eine fehlermeldung, dass ich globals definieren muss, obwohl ich mit $_SESSION['name'] arbeite

  2. hi,

    die ausgaben bleiben leer...allerdings erst nachdem ich meine Seiten strukturiert und geordnet habe. also mit mehreren Unterordnern..vorher funktionierte es einwandfrei

    Ggf. einen Problem mit dem Cookie, in dem die Session-ID abgelegt wird? Genauer, mit seinem Pfad.

    Kontrolliere mal die zuständigen Einstellungen über phpinfo(), und lasse dir detailiert anzeigen, ob und was für einen Cookie dein Browser empfängt.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Ggf. einen Problem mit dem Cookie, in dem die Session-ID abgelegt wird? Genauer, mit seinem Pfad.

      wie muss der pfad da gesetetzt sein?
      wollt eigentlich ohne cookie prog..wie muss ich dass da schreiben?

      session.use_cookies ist an

      1. Wenn Du das ohne Cookies machen willst, musst Du mit jeden Link, der seitenintern ist, die Session-ID mitgeben, quasi so:

        <a href="interneseite.php?PHPSESSID=XXXXXXX>...

        PHPSESSID <- Der Identifier ist Serverabhängig, aber meistens eben PHPSESSID.

        Das gilt übrigens auch für Formulare

        1. Hallo,

          Wenn Du das ohne Cookies machen willst, musst Du mit jeden Link, der seitenintern ist, die Session-ID mitgeben

          das macht PHP völlig selbständig. Es bedarf in bestimmten Fällen noch einer Anpassung der Direktive url_rewriter.tags.

          Gruß aus Berlin!
          eddi

          1. Tut es meiner Erfahrung nach nicht. Wenn ich mit abgeschalteten Cookies browse, werden i.d.R. nicht automatisch die session-ids angehangen. Ich weiß auch nicht, woran das liegt...

            1. Hab schon versucht die Session-ID_'s anzuhängen, das geht aber auch nicht. Folgender Fehler tritt auf:

              Warning: Unknown(): Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0

              Aber wie gesagt, ich nutze ja $_SESSION['xyz']

              1. hab mein prob jetzt gelöst...hatte vorher alles was in die session geschrieben wird einzeln in ein include geschrieben, nun steht es direkt im skript und es läuft einwandfrei!!

                thanks for help

                1. hi,

                  hab mein prob jetzt gelöst...hatte vorher alles was in die session geschrieben wird einzeln in ein include geschrieben, nun steht es direkt im skript und es läuft einwandfrei!!

                  In Kombination mit deiner Aussage, dass du deine Ordnerstruktur geändert hast, legt dies die Vermutung nahe, dass du dabei was falsch gemacht hast - und dein include-File schlicht nicht gefunden wurde.

                  Hättest du require benutzt, oder ein ordentlich konfiguriertes error_reporting, wäre dir dies sicher schneller aufgefallen.

                  gruß,
                  wahsaga

                  --
                  /voodoo.css:
                  #GeorgeWBush { position:absolute; bottom:-6ft; }
            2. Re:

              Tut es meiner Erfahrung nach nicht.

              Dieses Verhalten ist dann in der Konfiguration PHPs begründet. Mit der Konfiguration...

              session.use_cookies     =0
              session.use_only_cookies=0
              session.use_trans_sid   =1

              ...sollte dies aber möglich sein. Näheres findet sich dazu im Kapitel Session.

              Gruß aus Berlin!
              eddi