Ankündigung

Einklappen
Keine Ankündigung bisher.

Kleine Funktion

Einklappen

Neue Werbung 2019

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

  • Kleine Funktion

    Kann mir jemand sagen wie ich das schreibenmuss damit in zeile 4 des scriptes das input einen inhalt erhält

    wie ich die Funktion unten aufrufe kann man sehen page=hallo steht oben in der url

    Code:
    <?php 
    function get_VAR($input,$type){ 
    
        $input = $$type[$input]; //Wie muss das hier lauten es soll so ausehen
                                            //$input = $_GET["page"]; das _GET soll über
                                            //$type übertragen werden
                                             
        if(empty($input)){ 
            $input = "default"; 
        } 
    
        return $input; 
    } 
    
    
    
    echo get_VAR("page","_GET");    
    
    ?>
    was mach ich hier dran falsch ?

    Ich versuche meine ganzen funktionen für _GET,_POST,_SESSION zu einer Funktion zusammenzufassen.

    mfg


  • #2
    hat sich erledigt meine lösung

    Code:
    <?php 
    
    function get_VAR($input,$type){ 
    	
    	switch($type){ 
    		
    		case "_GET": $input = $_GET[$input]; break; 
    		case "_POST": $input = $_POST[$input]; break;
    		case "_SESSION": $input = $_SESSION[$input]; break; 
    		default: $input = "Ungültige Query"; break; 
    	} 
    
    	if(empty($input)){ 
    		
    		$input = "default"; 
    	} 
    
    	return $input; 
    } 
    
    
    
    echo get_VAR("page","_GET");     
    
    ?>
    mfg

    Kommentar


    • #3
      Re: Kleine Funktion

      Zitat von nilsfeld
      was mach ich hier dran falsch ?
      Nichts. Grundsätzlich kannst du das so machen, nur außgerechnet nicht mit deinen $_GET etc Arrays

      Zitat von php.net
      Bitte beachten Sie, dass variable Variablen nicht bei Superglobalen Arrays verwendet werden können. Das bedeutet, etwas wie ${$_GET} ist nicht möglich. Wenn Sie nach einer Möglichkeit suchen, die Verfügbarkeit von Superglobalen und den alten HTTP_*_VARS zu handhaben, können Sie das mit referenzieren versuchen.
      http://de2.php.net/manual/de/languag...s.variable.php

      KMAssS

      Kommentar


      • #4
        ok
        danke das erklärt einiges

        ich hab da noch ne frage wenn ich nun mit addslashes meine varibalen bearbeite da ich sie meist in die db eintrage setzt der ja die schönen /// davor hier mal meine funktion
        Code:
        function get_VAR($input,$type){ 
        	
        	switch($type){ 
        		
        		case "_GET"; $input = addslashes($_GET[$input]); break; 
        		case "_POST"; $input = addslashes($_POST[$input]); break;
        		case "_SES"; $input = $_SESSION[$input]; break; 
        		default; $input = "Ungültige Query"; break; 
        	} 
        
        	if(empty($input)){ 
        		
        		$input = "default"; 
        	} 
        
        	return $input; 
        }
        wenn ich das nun wieder normal einzeigen will mach ich das mit stripslashes

        Beispiel
        page="""""";
        mit addslashes seiht page nun so aus
        page=\\\"\\\"\\\"\\\"\\\"\\\
        wenn ich nun wieder
        echo stripslaches(page)
        mache gibt er mir aber nur das hier aus
        page=\"\"\"\"\"\
        erst wenn ich
        echo stripslaches(stripshlashes(page))
        eingebe kommt wieder mein orgial ergebniss von
        page="""""";

        Das ganze wird per _GET übertragen an die oben gegebene Funktion.

        wieso muss ich 2 mal stripslashes verwenden ?

        mfg

        Kommentar


        • #5
          Hi!

          Das ganze hat ich auch mal. Anscheinend wird auf die GET (und POST) Variablen schon einmal addcslashes angewendet, bevor sie dir zur Verfügung stehen. Ganz kapiert hab ich zwar nicht warum, war bisher aber immer so bei mir. Lass einfach das addcslashes beim zuweisen weg, dann dürfte dein Script so funktionieren...

          KMAssS

          Kommentar


          • #6
            Ganz kapiert hab ich zwar nicht warum
            Das nennt sich Magic Quote:

            http://www.dclp-faq.de/q/q-magic-quotes.html

            Gruß KiBa

            Kommentar


            • #7
              da muss erstmal einer drauf kommen das kann manso ja nicht ahnen aber zum glück bekommt man fast immer ne antwort hier.

              mfg

              Kommentar


              • #8
                Zitat von nilsfeld
                da muss erstmal einer drauf kommen das kann manso ja nicht ahnen aber zum glück bekommt man fast immer ne antwort hier.
                Die Antwort hättste als Profi auch da finden können:

                16.13. Wieso wird aus " plötzlich \" und wie geht das wieder weg?
                http://www.dclp-faq.de/q/q-magic-quotes.html

                Kommentar

                Lädt...
                X