GET - Teil 2

Hier noch ein paar nützliche Information zu unserer GET-Methode.

Mehr Daten!

Wenn mehr als nur ein Wert übergeben werden soll, geht dies auch, indem einfach noch mehr angehangen werden. Diese werden aber mit einem Und-Zeichen getrennt.

http://localhost/index.php?alter=28&name=Peter

Zeichenbegrenzung

Allerdings gibt es auch Grenzen, nämlich die Anzahl der Zeichen, welche in einer URL verwendet werden dürfen, und nicht alle Zeichen sind erlaubt.

Für die Anzahl der Zeichen gibt es keine feste Regel, es kommt darauf an, wie der Server konfiguriert wurde. Um ganz sicher zu gehen, sollten es nicht mehr als 255 Zeichen sein (inkl. "http....").

Erlaubte Zeichen

Nicht alle Zeichen dürfen in einer URL verwendet werden, hier die erlaubten.

  • Buchstaben von a bis z
  • Buchstaben von A bis Z
  • Zahlen von 0 bis 9
  • Punkt "."
  • Bindestrich "-"
  • Unterstrich "_"
  • Klammeraffe "@"

Folgende Zeichen sind zwar erlaubt, besitzen aber besondere Funktionen.

  • Fragezeichen "?"
  • Gleichheitszeichen "="
  • Doppelpunkt ":"
  • Semikolon ";"
  • Slash "/"
  • Pluszeichen "+"
  • Prozentzeichen "%"
  • Raute "#"
  • Dollarzeichen "$"

Zeichenkodierung

Wenn andere Zeichen benötigt werden, müssen diese "codiert" werden. Das bedeutet, wir umschreiben sie mit den Zeichen, die erlaubt sind. Zum Beispiel

  1. Leerzeichen wird zu "%20"
  2. Ein Und-Zeichen wird zu "%26"

Da in den meisten Fällen die zu übermittelnden Informationen vom Programmierer festgelegt werden, kann dieser sich auf die erlaubten Zeichen beschränken.

Für den seltenen Fall, dass doch Sonderzeichen benötigt werden, gibt es in PHP auch Funktionen, welche Zeichenketten dafür umwandeln (encode) und zurück wandeln (decode):

  • urlencode ( STRING )
    Wandelt eine Zeichenkette um, damit sie in einer URL verwendet werden darf.
     
  • urldecode ( STRING )
    Wandelt eine URL kodierte Zeichenkette in normale Zeichen zurück.

Da gibt es noch einige Fallstricke, die ich später vieleicht aufgreifen werde.