michael: POST Formular mit GET Parameter

Hallo,ich hab hier neulich im Forum gesehen,
daß man bei einem mit Post versendeten Formular
trotzdem Parameter anhängen kann, die mit Get versendet werden.
Leider finde ich den Artikel nicht mehr.
Der GET Parameter wurde dabei irgendwie mit einem Fragezeichen im <form>-Element angehängt.
kann mir bitte jemand kurz weiterhelfen.
Danke Michael

  1. Hi,

    Hallo,ich hab hier neulich im Forum gesehen,
    daß man bei einem mit Post versendeten Formular
    trotzdem Parameter anhängen kann, die mit Get versendet werden.

    huestl, GET und POST kombiniert so zu sagen?

    Leider finde ich den Artikel nicht mehr.

    Das scheint mir klar. Der Autor hat diesen zurueckgezogen oder sich davon klar distanziert.

    Der GET Parameter wurde dabei irgendwie mit einem Fragezeichen im <form>-Element angehängt.
    kann mir bitte jemand kurz weiterhelfen.

    Nein.

    Gruss,
    Ludgr

    1. Hallo,

      Das scheint mir klar. Der Autor hat diesen zurueckgezogen oder sich davon klar distanziert.

      Warum?

      Was sollte an

      <form action="script.pl?param1=5&amp;param2=1" method="POST">
      <input type="text" name="t1" value="" size="50" maxlength="50">
      <input type="submit" name="ok" value="OK">
      </form>

      nicht funktionieren?

      viele Grüße

      Axel

      1. Das hab ich gesucht...
        Vielen Dank
        Michael

      2. Hi,

        <form action="script.pl?param1=5&amp;param2=1" method="POST">
        <input type="text" name="t1" value="" size="50" maxlength="50">
        <input type="submit" name="ok" value="OK">
        </form>

        dann hast Du den POST+GET erfunden!   ;-)

        Gruss,
        Ludger

        1. Hallo,

          <form action="script.pl?param1=5&amp;param2=1" method="POST">
          <input type="text" name="t1" value="" size="50" maxlength="50">
          <input type="submit" name="ok" value="OK">
          </form>
          dann hast Du den POST+GET erfunden!   ;-)

          Nein, es ist ein POST-Request mit query-Teil in der Request-URI.
          http://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html#sec5.1
          ...
          Request-Line   = Method SP Request-URI SP HTTP-Version CRLF
          ...
          http://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html#sec5.1.2
          ...
          Request-URI    = "*" | absoluteURI | abs_path | authority
          ...
          http://www.ietf.org/rfc/rfc2396.txt
          ...
          3.4. Query Component

          The query component is a string of information to be interpreted by
             the resource.

          query         = *uric

          Within a query component, the characters ";", "/", "?", ":", "@",
             "&", "=", "+", ",", and "$" are reserved.
          ...

          viele Grüße

          Axel

          1. Hi,

            also, nur damit ich mal was lerne, POST und GET schliessen sich nicht aus??

            Gruss,
            Ludger

            1. Hallo,

              also, nur damit ich mal was lerne, POST und GET schliessen sich nicht aus??

              Naja, formal schon: Die Request-Methode ist entweder POST oder GET. Bei dieser Mischform handelt es sich zunächst um ein POST.

              Aber was passiert denn bei einem POST oder GET? Grundsätzlich sind die Requests doch sehr ähnlich.
              Bei einem GET wird die URL, die im action-Attribut des FORM steht, um die Werte der einzelnen Formularelemente ergänzt und der Request-Body hat die Länge Null, während beim POST die angegebene URL unverändert bleibt und die Parameter im Body des Requests übertragen werden. Und hier liegt der Knackpunkt: Da die URL beim POST nicht weiter modifiziert wird, kann man doch gleich von Anfang an ein paar Parameter im Stil eines GET-Requests anhängen.
              Das Script, das durch den Request aufgerufen wird, muss dann natürlich "wissen", dass es die Parameter teils aus den POST- und teils aus den GET-Parametern holen soll.

              Ich freue mich, wenn ich hier für Klarheit sorgen konnte.
              Wir lernen doch alle noch täglich dazu. ;)
              Ciao,

              Martin