Content-Type: multipart form-data

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Content-Type: multipart form-data

    Hi,

    ich möchte per php ein Formular ausfüllen.

    Wenn ich im Browser ein Formular ausfülle und absende, dann sehe ich im HTTP-Stream den Post:
    .
    .
    .
    Content-Type: multipart/form-data; boundary=---------------------------66309923773901
    .
    .
    .


    Nun sende ich im php dann entsprechend
    .
    .

    fputs($fp, "Content-Type: multipart/form-data; boundary=---------------------------".$form."\n");
    .
    .
    .
    wobei $form die Nummer "66309923773901" ist.

    Soweit so gut, funktioniert für die ersten beiden Formulare mit einer statischen Nummer.

    Aber auf dem 3. Formular ist diese Nummer dynamisch. Bei jeden Aufruf im Browser der gleichen Seite sehe ich eine andere Nummer für die Form.

    Im Sourcecode desBrowsers sehe ich die Nummer nicht. Im HTTP-Stream sehe erst im POST vom Browser diese Nummer.

    Ich nutze den Firefox mit Firebug und wireshark für den Mischnitt vom HTTP-Stream.

    Es wird zusätzlicher Javascript eingebunden durch
    <script language="JavaScript1.2" src="/script/form.js"></script>

    Aber eine offentsichtliche "Berechnung" eines solchen Formnames sehe ich dort auch nicht.

    Woher erhalte ich diese Nummer ?

    Was übersehe ich ?

    Zuletzt geändert von NoGod; 12.03.2009, 16:22.

  • #2
    http://www.w3.org/Protocols/rfc1341/7_2_Multipart.html

    Kommentar


    • #3
      Danke, dass hilft mir zumindest bei der formalen Beschreibung.

      Was ich suche ist also das "boundary", wobei ich http://www.faqs.org/rfcs/rfc1341.html verständlicher finde.

      Aber wie nun dieser Seite das"boundary" auswürfelt, dass kann nur ich allein erforschen, fürchte ich

      Kommentar


      • #4
        Die boundary-Zeichenkette bestimmst du als Versender selber - natürlich möglichst so, dass sie in den von ihr zu trennenden Datenbestandteilen nicht vorkommt.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Da ein Applikationserver die Form ausliefert, erwartet der eine bestimmte Boundary - sonst gibt es Fehler.

          Vielen Dank.

          Dieser Thread kann geschlossen werden.

          Kommentar


          • #6
            Original geschrieben von NoGod
            Da ein Applikationserver die Form ausliefert, erwartet der eine bestimmte Boundary
            Und auf welche Weise gibt der diesen Wert vor?
            - sonst gibt es Fehler.
            Und welcher wäre das?


            RFC 1341 sagt jedenfalls,
            The encapsulation boundary MUST NOT appear inside any of the encapsulated parts. Thus, it is crucial that the composing agent be able to choose and specify the unique boundary that will separate the parts.
            The composing agent ist der, der die Formulardaten verschickt.
            In wie fern ein verarbeitender Server sich anmaßen sollen dürfte, dabei was mitzureden, ist mir schleierhaft.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Da die Systemumgebung mehr als einen Applikationsserver enthält, kann eine andere Komponente hier Regeln durchsetzen, die der Applikationsserver von sich aus nicht allein machen würde.

              Ein HTTP-Mitschnitt vom Stream hat mir nicht geholfen.
              Der Sourcecode hat mir nicht geholfen.
              Jetzt debugge ich die Livesession per Firebug im Browser. Bei soviel Javascript könnte es irgendwo berechnet werden......

              Kommentar

              Lädt...
              X