Anzeige

Problem mit $_GET

Problem mit $_GET | PSD-Tutorials.de

Erstellt von iPhil, 14.05.2009.

  1. iPhil

    iPhil Noch nicht viel geschrieben

    Dabei seit:
    13.07.2008
    Beiträge:
    15
    Geschlecht:
    männlich
    Problem mit $_GET
    Hi Leute,

    kurz:
    bei
    PHP:
    1.  
    2. if($_GET['bla'] == 'Menü){
    3.  
    4. }else{
    5.  
    6. }
    7.  
    "geht" der Interpreter immer in's "Else" rein.
    Ich nehme an das hat was mit Zeichencodierung zu tun. Könnt ihr mir helfen?
    viel Dank =)

    Phil
     
    #1      
  2. netbandit

    netbandit Aktives Mitglied

    12
    Dabei seit:
    18.05.2008
    Beiträge:
    1.145
    Geschlecht:
    männlich
    Problem mit $_GET
    AW: Problem mit $_GET

    Menü ist ein String; entweder in Anführungszeichen oder in Hochkommas setzen
     
    #2      
  3. iPhil

    iPhil Noch nicht viel geschrieben

    Dabei seit:
    13.07.2008
    Beiträge:
    15
    Geschlecht:
    männlich
    Problem mit $_GET
    AW: Problem mit $_GET

    jaa sorry. hab ich auch gemacht^^
    sonst hätts ja auch eine Fehlermeldung gegeben und ich hätte hier keinen eintrag hinterlassen.
     
    #3      
  4. Doitsu

    Doitsu Aktives Mitglied

    Dabei seit:
    15.04.2009
    Beiträge:
    482
    Problem mit $_GET
    AW: Problem mit $_GET

    Wird denn wirklich 'Menü' uebergeben? Kann ich mir ehrlich gesagt nicht vorstellen.
    in PHP darfst du das 'ue', wenn ein ue uebergeben wird, nicht maskieren ..
     
    #4      
  5. netbandit

    netbandit Aktives Mitglied

    12
    Dabei seit:
    18.05.2008
    Beiträge:
    1.145
    Geschlecht:
    männlich
    Problem mit $_GET
    AW: Problem mit $_GET

    Es sollte auch ein ü ankommen (nicht ü), selbst wenn Sonderzeichen html codiert sind.

    Edit: welchen Zeichensatz hast Du denn im Html definiert?
     
    #5      
  6. iPhil

    iPhil Noch nicht viel geschrieben

    Dabei seit:
    13.07.2008
    Beiträge:
    15
    Geschlecht:
    männlich
    Problem mit $_GET
    AW: Problem mit $_GET

    das problem ist, dass ich nicht so einfach testen kann was übergeben wird.
    Wenn ich es ausgeben lasse steht Menü da und der Firefox schreibt auch Menü in seinen Quelltext rein.

    In der URL-Zeile steht allerdings ....?bla=Men%FC
    das muss eine andere Codierung sein.
     
    #6      
  7. netbandit

    netbandit Aktives Mitglied

    12
    Dabei seit:
    18.05.2008
    Beiträge:
    1.145
    Geschlecht:
    männlich
    Problem mit $_GET
    AW: Problem mit $_GET

    Try & Error, probier mal:

    PHP:
    1.  
    2. if($_GET['bla'] == 'Menü'){
    3. echo 'passt';
    4.  
    5. }
    6. else{
    7. echo 'passt nicht';
    8. }
    9.  
    oder
    PHP:
    1.  
    2. if($_GET['bla'] == utf8_decode('Menü')){
    3. echo 'passt';
    4.  
    5. }
    6. else{
    7. echo 'passt nicht';
    8. }
    9.  
     
    #7      
  8. exo

    exo Aktives Mitglied

    Dabei seit:
    17.04.2006
    Beiträge:
    357
    Geschlecht:
    männlich
    Ort:
    Lutherstadt Wittenberg
    Software:
    Photoshop
    Kameratyp:
    Canono EOS 50D
    Problem mit $_GET
    AW: Problem mit $_GET

    gegenfrage: warum willst du unbedingt ein Ü machen? Gehts denn nich auch mit u ?

    Ich würd umlaute und sonderzeichen in variablen und besonders in der URL immer vermeiden!
     
    #8      
  9. iPhil

    iPhil Noch nicht viel geschrieben

    Dabei seit:
    13.07.2008
    Beiträge:
    15
    Geschlecht:
    männlich
    Problem mit $_GET
    AW: Problem mit $_GET

    danke euch, hab das ü jetzt rausgelassen an der stelle wo es der "normale" benutzer eh nicht mitbekommt.
     
    #9      
  10. r3nt5ch3r

    r3nt5ch3r ~ Allround pG ~

    Dabei seit:
    10.03.2006
    Beiträge:
    1.836
    Geschlecht:
    männlich
    Problem mit $_GET
    AW: Problem mit $_GET

    Also:
    es gibt eine Funktion die nennt sich "urlencode"
    -> "urlencode('Menü')" -> "Men%C3%BC"

    Dann ist folgender Aufruf kein Problem mehr und das ganze (sollte) auch jede Suchmaschine verstehen, da es die standard URL-Kodierung ist.

    PHP:
    1.  
    2. //Aufruf: iwas.php?bla=Men%C3%BC
    3. if($_GET['bla'] == 'Menü'){
    4.    
    5. }else{
    6.    
    7. }
     
    #10      
x
×
×