Der Martin: Wie bekommt man GET und POST gleichzeitig in ein Formular?

Beitrag lesen

Hallo,

Und das ist eben der Irrtum oder die Fehlimplementation in Perl und PHP. Es sind keine GET-Parameter, sondern wie gesagt "Query-String-Parameter". Denn diese GET-/Querystring-Parameter lassen sind in jedem Request unterbringen, also auch beispielsweise HEAD, weil sie Bestandteil der URL sind

... und deswegen heißen sie treffenderweise auch URL-Parameter.

Wenn im POST der Formularinhalt übertragen wird, der einen zu bearbeitenden Datensatz darstellt, so ist es eventuell ungünstig, dahinein noch Metadaten zu bringen, die vielleicht einen Benennungskonflikt ergeben. Dazu ein Beispiel, doch vorab: GET und Querystring nimmt man günstigerweise für das Abfragen von Information, also eine bestimmte URL (inklusive Querystring) sollte stets die gleiche Antwort liefern. Für serverseitige Datenveränderung sollte man GET nicht verwenden. Für den Fall ist POST besser geeignet. Ein POST-Request erzeugt also irgendeine Form von Veränderung auf dem Server.

So ähnlich habe ich das auch schon mal formuliert, nur kürzer. :-)

Insgesamt gibt es 4 Wege, Information in einem Request zu übertragen:

  • Querystring
  • POST-Daten
  • Cookie
  • PathInfo, beziehungsweise der Pfadanteil in der URL allgemein

Diese Möglichkeiten sind da, also kann man sich auch sinnvoll nutzen. Und das Gute daran: sie sind alle gleichzeitig nutzbar. (POST-Daten sind natürlich an einen POST-Request gebunden.)

Richtig, wobei die Möglichkeit, Daten per Cookie zu übertragen, am wenigsten transparent für den Nutzer ist, während PathInfo und/oder Query String am offensichtlichsten sind.

So long,
 Martin

--
Wenn der Computer wirklich alles kann,
dann kann er mich mal kreuzweise.