2012-04-06 7 views
0

Ich habe Skript wo einige URL zu index.php? -Daten führt und die Seite öffnet Wie kann ich das verwenden, um die URL zu öffnen, öffnen Sie eine "Unterseite" wie index.php? Data = Menü oder so? der Code, den ich mit dem ersten verwenden istphp var isset,? Data = menu

if(isset($_GET['palvelut'])){ echo "this is a sample"; }

Antwort

2

Sie haben die richtige Idee, aber lassen Sie mich zu wenig dazu erarbeiten. Sie müssen überprüfen, ob $_GET['data'] gesetzt ist, indem Sie isset($_GET['data']) tun, und wenn das gesetzt ist, prüfen, ob es einen bestimmten Wert hat, "Menü" in diesem Fall. Sie können das so tun $_GET['data'] == "menu". Dass sie alle zusammen, Sie diese:

if (isset($_GET['data']) && $_GET['data'] == "menu") { 
    /* Menu code goes here */ 
} 

Wenn Sie diese Arbeit für mehrere Werte haben möchten für data Sie folgendes tun:

if (isset($_GET['data'])) { 
    switch($_GET['data']) { 
    case "Possible_Value_1" : 
     /* Code for this condition appears here */ 
     break; 

    case "Possible_Value_2" : 
     /* Code for this condition appears here */ 
     break; 

    /* etc... */ 

    default : 
     //Just as a precaution... 
     echo "Invalid 'data' value supplied!"; 
     break; 
    } 
} 

Hoffnung, das hilft.

+0

+1 Sie tippen schnell! 17 Sekunden schneller als ich für die gleiche Antwort .. Ich bin raus. – noob

+0

Vielleicht gehe ich hier zuerst? lol Danke für die +1! –

+0

gut ja :) das palvelut wo ein Tippfehler .. aber dies und alle anderen Antworten geholfen. Danke :) – Joakim

1

Wenn ich Ihre Frage verstehe (was ich nicht verstehe), haben Sie es bereits beantwortet.

Ihre URL lautet: http://www.mydomain.com/index.php?data=something

Code wäre:

if (!isset($_GET['data'])) { 
    //do something because no data argument was passed 
} else { 
    switch ($_GET['data']) { 
    case "homepage": 
     header("location: homepage.php"); 
     die; 
     break; 
    case "someotherpage": 
     header("location: someotherpage.php"); 
     die; 
     break; 
    //and so on 
    } 
} 

Offensichtlich stattdessen einen Header Umleitung des Verwendens , könnten Sie einfach eine Datei() oder include() benötigen oder etwas ganz anderes tun.

+1

Dies. Zum ursprünglichen Frageautor though: diese switch-Anweisung wird die Umleitung perfekt machen, aber wenn Sie diese Methode NICHT machen und etwas Ähnliches verwenden, wie das Speichern des _GET in einer Variablen und dann das Weiterleiten an diese Variable, müssen Sie das bereinigen Eingabe, um die Injektion zu verhindern. – DaOgre

+0

was meinst du? beim Browsen http://www.mydomain.com/index.php?data=something und wenn dieses etwas aufgerufen wird, wird die Variable gesetzt und wenn man auf eine andere Seite geht, wird die Variable bereinigt. Ich habe die erste dort oben verwendet @ spryno724 'if (isset ($ _ GET ['Daten']) && $ _GET ['Daten'] ==" Menü ") { /* Menücode geht hier */ } ' Ich benutze sonst, wenn auf meinem Skript ' – Joakim

+0

über die Injektionen. – Joakim