Ersatz für register_globals OFF

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

  • Ersatz für register_globals OFF

    Hi Leute,

    folgende Frage: Ich habe vor längerer Zeit eine umfangreichere PHP-Anwendung geschrieben, die ziemlich vielen Dateien besteht und aber alle in eine index.php reingeladen werden. Damals habe ich allerdings nicht daran gedacht, dass register_globals auch OFF sein könnten und daher die GET-Variablen nie deklariert.

    Nun habe ich mal folgenden Code ganz oben in die index.php geschrieben und siehe da: es funktioniert auch bei register_globals OFF!

    PHP-Code:
    while (list($name$value) = each($_GET))
    {
        if (!
    is_array($value))
        {
            
    $name str_replace("?","",$name);
            ${
    $name} = $value;
        }

    Nun meine Frage: Ist das wirklich ein Ersatz für die register_globals oder wiege ich mich da in falscher Sicherheit?

    Theoretisch müsste es ja funktionieren, da es alle Variablen mit ihren Werten verfügbar macht, so wie register_globals auch, oder?

    Hat das eventuell einen negativen Einfluss, wenn die register_globals auf ON sind oder gibt's andere Dinge, auf die ich noch achten sollte?

    Danke für eure Hilfe!

    Greetz Lukas

  • #2
    dein problem ist einfach, dass du den sinn von OFF totalvernachlässigst. da hättest du dir das gleich sparen können und den server wieder umstellen können.

    Kommentar


    • #3
      Hi TobiaZ!

      Erstmal danke für deine Antwort!

      Sorry, aber ich verstehe deine Antwort nicht ganz. Ich habe mir zwar mal diese Erklärung von register_globals angesehen (http://at.php.net/register_globals), aber ich komme leider trotzdem nicht drauf, was du mir sagen willst

      Könntest du das vielleicht kurz näher erläutern? Es geht um die Sicherheit, richtig?

      Greetz Lukas

      Kommentar


      • #4
        Ja, wie du sicher dem Artikel entnommen hast, hat die umstellung auf OFF einige Vorteile.

        Mit deinem Script machst du diese Vorteile wieder zunichte. Anstatt der faulheit wegen dein ganzes script mit einem workaround zu behandeln, solltest du dir lieber die mühe machen und das Script auf register_globals off optimieren. Dann ists wenigstens sauber.

        Kommentar


        • #5
          Achso, ok!

          Ich werde meinen Code also nochmal durchsehen!

          Danke jedenfalls!

          Greetz Lukas

          Kommentar

          Lädt...
          X