[Variablen] Interne Variablen im Script auch mit $_GET auslesen?

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

  • [Variablen] Interne Variablen im Script auch mit $_GET auslesen?

    Hallo,

    ich würde gern wissen, ob es eine Möglichkeit gibt, Variablen innerhalb einer Seite auch mit $_GET['variable'] auszulesen oder irgend eine vergleichbare Möglichkeit, die _GET und _POST impliziert?

    Hintergrund:

    Bei komplexen Scripten weiß ich manchmal nicht, ob jetzt die Variable X im Script selbst definiert wurde oder ob ich sie per POST oder GET übermittelt habe und würde gern neine einheitliche Schreibweise zum Auslesen der Variablen verwenden, also nicht einmal

    echo $a;

    und einmal

    echo $_GET['a'];

    und einmal

    echo $_GET['a'];

    Gibts eine Möglichkeit, die alle Schreibweisen beinhaltet?

  • #2
    Gibts eine Möglichkeit, die alle Schreibweisen beinhaltet?
    ja, register_globals auf on stellen. aber das ist nicht sinn der sache, da es große sicherheitslücken öffnet. mein tipp: unterscheide immer ganz genau zwischen normalen und get- bzw.post-variablen. alternativ gäbe es noch $_REQUEST, aber auch das ist nicht sauber.

    darum immer sauber trennen! ist einfach besser und sicherer.

    gruß
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Hi Peter,

      Registerglobals will ich in jedem Fall OFF lassen, mein Provider hats auch umgstellt.

      Aber wenn du sagst, es gibt sowas nicht, dann ist das ok, dann muss ich einfach genau achten, woher kommt die Variable nun. Das ist ok, ich dachte nur, es gibt eine Alternative, scheint nicht so, also scheint ihr Profis das auch so zu machen werd ich eben auch so tun

      Danke.

      Kommentar


      • #4
        Original geschrieben von der_milchmann
        Hi Peter,

        Registerglobals will ich in jedem Fall OFF lassen, mein Provider hats auch umgstellt.

        Aber wenn du sagst, es gibt sowas nicht, dann ist das ok, dann muss ich einfach genau achten, woher kommt die Variable nun. Das ist ok, ich dachte nur, es gibt eine Alternative, scheint nicht so, also scheint ihr Profis das auch so zu machen werd ich eben auch so tun

        Danke.
        Naja, es geht schon, sauber ist es aber nicht:

        PHP-Code:
        class GlobalWrapper
        {
            
            public function 
        get($name)
            {
                
        $vars array_merge($_GET,$_POST,$GLOBALS);
                return isset(
        $vars[$name]) ? $vars[$name] : null;
            }  
            
        }


        $g = new GlobalWrapper();
        $a 5;
        $_GET['b'] = 6;

        echo 
        $g->get('a');
        echo 
        $g->get('b'); 
        Wenn der GlobalWrapper dann noch ArrayAccess implementiert ist auch ein Array ähnlicher Zugriff ala $g['a'] möglich.
        Ist aber, wie gesagt, weder sauber noch Empfehlenswert.

        Kommentar


        • #5
          Ok - das überzeugt, danke!

          Werde einfach drauf achten, dass ich sauber programmiere und achte, woher die Variable kommt, vielleicht achtet man dann auch allgemein drauf, sauberer zu scripten :-)

          Kommentar

          Lädt...
          X