depp: Konfiguration für Variablen

moin
hab nen neuen apache drauf installiert und nun funktioniert die variablen übergabe nicht mehr wie gewohnt.
also ich will in meinen scripts die per ? an die url angehängten parameter direkt mit $param abfragen können und nicht erst extra die parameter den variablen zuweisen mit irgendner get funktion.
wo/wie kann ich das festlegen? in welcher conf file ? und wie heist diese unpraktische neuerung?

danke

  1. Hallo depp,

    wo/wie kann ich das festlegen?

    in der php.ini unter register_globals, das auf off stehen sollte. Lies in der php.ini den Abschnitt ueber register_globals um zu erfahren, warum das so ist.

    und wie heist diese unpraktische neuerung?

    Diese laengst ueberfaellige Einstellung heisst, wie gesagt register_globals und du wirst sie vernuenftigerweise auch auf off lassen.
    Du kannst die Parameter aus den REQUEST-Arrays auch wunderbar initialisieren, zB. so
    $foo = !empty($_GET['foo']) ? $_GET['foo'] : '';
    register_globals auf on zu setzen, nur damit sich ein bisschen Tipperei spart, ist grober Unfug und wird wohl auch nicht mehr ewig lange bei allen Providern funktionieren.

    Gruß,

    Dieter

    1. Hello,

      man kann für alte Scripte (mit Vorsicht natürlich) aber auch die register_globals auf Verzeichnisebene oder sogar für ein einzelnes Script einschalten.

      Allerdings gebe ich Dir Recht, man sollte den Zustand schnellstens ändern, da die meisten Scripte mit globalen Scriptvariablen leider auch injizierbar sind.

      Man ist ja bequem, und initialisiert die Variablen nicht, weil PHP das so schön automatisch macht :-((

      Genau so eine Unsitte (ih habe sie auch mal gehabt am Anfang) ist es, die Notices auszuschalten. Ein gut geschriebenes Script produziert aber gar keine Notices. Und im Echtbetrieb kann man display_errors immer noch ausschalten, um das Logging nur in einer Datei zu haben.

      Harzliche Grüße aus http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      1. Hallo Tom,

        Ich glaube, Du hattest neulich mal einen Beitrag, in dem von einer Konfigurationsdatei die Rede war. Ich mache das auch so, schreibe in eine 'config.inc.php' allen Kram wie MySQL-Daten und all sowas. Ganz oben steht dann error_reporting(2047), sodass man das fuer alle Dateien mit einem Handgriff umschalten kann.

        Gruß,

        Dieter

        1. Hello Dieter,

          Ich glaube, Du hattest neulich mal einen Beitrag, in dem von einer Konfigurationsdatei die Rede war. Ich mache das auch so, schreibe in eine 'config.inc.php' allen Kram wie MySQL-Daten und all sowas. Ganz oben steht dann error_reporting(2047), sodass man das fuer alle Dateien mit einem Handgriff umschalten kann.

          Ja, das ist enoorm praktisch.
          Und jedes meiner (neueren) Scripte hat auch eingebaute Debugfunktionen, die einem so wichtige Sachen, wie POST-, GET-, und SESSION-Variablen ausgeben. Wenn DEBUG (eigene Kontante) auf On steht, werden auch alle Fehlermeldungen der jeweiligen SQL-Schnittstelle und aller IO-Operationen in der Session (oder einer externen Log-Datei) gesammelt.

          Das hilft enorm, Fehler schnell zu finden.

          Harzliche Grüße aus http://www.annerschbarrich.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          Nur selber lernen macht schlau