Home       Servicebereich  Projekte  Kontakt  

Die Parameterübergabe erfolgt beim CGI Interface mit Hilfe von Umgebungsvariablen und per STDIN und STDOUT.

Parameterübergabe per URI

Beim GET Request werden die Parameter im URI mit übergeben. Hierbei gibt es zwei unterschiedliche Arten, die Parameter zu übergeben.

QUERY_STRING

Bei der Übergabe per QUERY_STRING werden die Parameter/Value Paare einfach an den aufzurufenden URI angehängt. Die Parameter werden mit einen "?" vom Pfad getrennt. Ein Webbrowser führt dieses automatisch durch, wenn ein Formular festlegt, daß die Parameter per GET Methode übertragen werden sollen.

Die Applikation kann die Werte aus der Umgebungsvariable QUERY_STRING lesen. Sie liegen hier in der Form param1=value1¶m2=value2 vor und müssen nur noch an den "=" und "&" getrennt werden.

PATH_INFO

Der Web Applikation können Parameter können auch ohne das "?" zur Abtrennung des Parameter-Strings übermitelt werden. Diese Mäglichkeit kann für die Indizierung in Suchmaschinen hilfreich sein, da diese den URLs mit "?" oft nicht folgen.

Bei dieser Art der Parameterübergabe wird einfach der zu übergebende Wert in Form von /store/value an den Aufruf des Scripts angehängt. Im Falle der Implementierung in PHP und des Aufrufs würde der Link folgendermaßen aussehen:

  <a href="webapp.php/store/value>
Der String nach dem "webapp.php" wird bei Apache 1.3 (mit entsprechender Konfiguration) in der Umgebungsvariable PATH_INFO übergeben. Diese Variable wird auch in der CGI Definition zur Übergabe von Informationen erwähnt. In der Praxis findet sie allerdings selten Verwendung. Beim Apache 1.3 enthält diese Variable den String mit führendem "/" in der Form /store/value. Dieser String kann zur weiteren Verarbeitung relativ einfach an den "/" gesplittet werden.

Parameterübergabe bei POST Requests

Bei POST Requests werden die Parameter im Content des HTTP Requests übergeben. Auf dem Server werden diese in den STDIN Datenstrom des aufgerufenen Programms in der Form param1=value1¶m2=value2 geschrieben. Ein Webbrowser schickt einen POST Request, wenn das Formular die method explizit als POST festlegt.


< zurück  | weiter >