thomas w.: register_globals

hallo zusammen,

nachdem ich meinen computer von php 3punktirgendwas auf php 4.3.2 upgedatet habe, wurde der query string nicht mehr wie gewohnt ausgelesen, z.b. index.php?write=willkommen -> funktioniert nicht mehr mit $write, sondern mit $_GET["write"].

nach etwas stöbern im forumsarchiv konnte ich herausfinden, dass das an register_globals liegt, da das seit ein paar versionsnummer standardmäßig auf off steht. soweit so gut. also hab ich in der php.ini register_globals wieder auf on gestellt, allerdings funktioniert das ganze trotzdem nicht (auch nach neustart des servers und des computers nicht). hab ich irgendetwas vergessen zu tun?

und noch etwas: mich würde eure persönliche einschätzung interessieren, ist es klüger, seine scripts auf $_GET umzustellen, oder ist es eher egal? denn mein eindruck ist (ich mag mich auch täuschen), dass die kommerziellen serverbetreiber register_globals ohnehin wieder auf "on" stellen.

danke & viele grüße,
tom

  1. Hallo thomas,

    nach etwas stöbern im forumsarchiv konnte ich herausfinden,

    du suchst wenigstens danach (<-Lob :-)) - die meisten fragen einfach, warum das nicht funktioniert statt erstmal zu suchen

    also hab ich in der php.ini register_globals wieder auf on gestellt, allerdings funktioniert das ganze trotzdem nicht (auch nach neustart des servers und des computers nicht). hab ich irgendetwas vergessen zu tun?

    mhh... was steht denn in der Ausgabe von phpinfo()?

    und noch etwas: mich würde eure persönliche einschätzung interessieren, ist es klüger, seine scripts auf $_GET umzustellen, oder ist es eher egal?

    Auf $_GET umstellen. Warum das sicherer ist, steht im Archiv.

    denn mein eindruck ist (ich mag mich auch täuschen), dass die kommerziellen serverbetreiber register_globals ohnehin wieder auf "on" stellen.

    ja, vermutlich können sie sich sonst vor Anfragen deswegen nicht mehr retten.

    Grüße aus Nürnberg
    Tobias

    --
    Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
    1. du suchst wenigstens danach (<-Lob :-)) - die meisten fragen einfach, warum das nicht funktioniert statt erstmal zu suchen

      ich versuchs zumindest. wobei ich manchmal echt ratlos bin, welche suchbegriffe ich am besten verwenden soll, um was passendes zu finden. aber wenn's klappt, dann klappt's ;-)

      mhh... was steht denn in der Ausgabe von phpinfo()?

      in der ausgabe von phpinfo(); steht natürlich Off, das hab ich bereits probiert. deswegen bin ich ja etwas verwundert. meinem verständnis nach muss man register_globals ja nur in der php.ini ändern.

      Auf $_GET umstellen. Warum das sicherer ist, steht im Archiv.

      die logik dahinter ist mir schon klar. ich hab mir das schon zu zeiten von php3 gedacht, dass man über den query-string einiges manipulieren _könnte_.

      ja, vermutlich können sie sich sonst vor Anfragen deswegen nicht mehr retten.

      ist klar! bin aber gespannt, wie lange die umstellung dauern wird. sehr schnell stell ich mir das jedenfalls nicht vor.

      gruß aus wien,
      tom

  2. hallo zusammen,

    hallo

    und noch etwas: mich würde eure persönliche einschätzung interessieren, ist es klüger, seine scripts auf $_GET umzustellen, oder ist es eher egal? denn mein eindruck ist (ich mag mich auch täuschen), dass die kommerziellen serverbetreiber register_globals ohnehin wieder auf "on" stellen.

    ich arbeite nur noch mit register_globals off ... das die großen kommerziellen immernoch on haben, liegt wohl daran, dass noch sehr viele internetseiten mit register_globals on programmiert wurden und eine umstellung dauert ...

    danke & viele grüße,
    tom

    cu
    ulli

  3. und noch etwas: mich würde eure persönliche einschätzung interessieren, ist es klüger, seine scripts auf $_GET umzustellen, oder ist es eher egal? denn mein eindruck ist (ich mag mich auch täuschen), dass die kommerziellen serverbetreiber register_globals ohnehin wieder auf "on" stellen.

    ich denke nicht das die ISP register_globals auf on setzen.
    das sicherheitskonzept dahinter ist schon sehr durchdacht.
    beim programieren kann man immer genau bestimmen wie eine variable in das script übergeben wird.
    auch hat es den vorteil das in functionen die variablen genutzt werden können.
    mein tip also register_globals = off