Bernd: global und Server

Hallo,

in meinem Testsystem läuft folgende Konstellation prima:

global $ID;
echo $ID;

Im Produktivsystem will das einfach nicht laufen.

Könnte das an einer Servereinstellung liegen?

Bernd

  1. Hi,

    in meinem Testsystem läuft folgende Konstellation prima:

    global $ID;
    echo $ID;

    wo und wie wird $ID deklariert bzw. initialisiert?

    Im Produktivsystem will das einfach nicht laufen.

    Was heißt das genau? Fehlerbeschreibung? Fehlermeldung??

    Könnte das an einer Servereinstellung liegen?

    Könnte es sein, dass dein Testsystem immer noch mit der Einstellung register_globals=on arbeitet?
    Höchste Zeit, das abzustellen.

    So long,
     Martin

    --
    Kleine Geschenke erhalten die Freundschaft.
    Große verderben sie aber meist auch nicht.
    Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
    1. Moin,

      Könnte es sein, dass dein Testsystem immer noch mit der Einstellung register_globals=on arbeitet?

      Das hat doch keine Auswirkung auf das Schlüsselwort "global" in PHP, oder? register_globals regelt doch nur externe Variablen, wie $_POST, $_GET und $_COOKIE, oder?

      Grüße Marco

      1. Hallo,

        Könnte es sein, dass dein Testsystem immer noch mit der Einstellung register_globals=on arbeitet?
        Das hat doch keine Auswirkung auf das Schlüsselwort "global" in PHP, oder? register_globals regelt doch nur externe Variablen, wie $_POST, $_GET und $_COOKIE, oder?

        ja, richtig - aber wenn Bernd nun ?ID=foo als URL-Parameter übergibt und aufgrund register_globals erwartet, eine Variable $ID im globalen Scope zu bekommen, dann kann er sie mit global auch innerhalb von Funktionen verfügbar machen. Aber eben nur, wenn sie existiert, wodurch auch immer.

        Würde er "ordentlich" über $_GET['ID'] auf den Parameter zugreifen, hätte er das Problem möglicherweise gar nicht gehabt, weil die superglobalen Arrays $_GET, $_POST und Co. überall verfügbar sind.

        Aber um eindeutig auf den Punkt zu kommen, müsste er mehr Hintergrundinformationen geben.

        Ciao,
         Martin

        --
        Noch Fragen? - Ich weiß es auch nicht.
        Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
        1. Hallo Forum,

          danke für die Antworten, es war ein Fehlalarm, sorry.

          @Martin: Natürlich arbeite ich seit Jahren nicht mehr mit register globals = on.

          Es lag daran, dass die Definition der zu inkludierenden DATEI; IN DEM DAS sZENARIO ABLÄUFT, eine andere ist als im Testsystem. Daher war das Ergebnis natürlich ein anderes und für mich exakt dasselbe, als wäre $ID nicht vorhanden, denn über die ID hätte eine fallunterscheidun g erfolgen sollen.
          Tat sie auch, jedenfalls in der Datei, die das Testsystem nutzte. Aber eben nicht in der fälschlicherweise genommenen Datei.

          ich hoffe, Ihr wisst, was ich meine?

          Grüße, bernd