also ich mag die indys nicht so sehr .. ich hätte ICS (
www.overbyte.be) für den Webserver benutzt. Da ist unter anderem ein prima Beispiel für deine Frage dabei.
Den Code habe ich gerade nur für Synapse (
synapse.ararat.cz/) parat, aber das sieht fast immer ähnlich aus, auch bei ICS und den indys ...
Eine Funktion die alles macht (braucht man eigentlich nicht, ist ja nur der Aufruf einer weiteren Prozedur):
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| function httppost(URL,Data: string): ansistring; var Recv: TMemoryStream; begin recv:= TMemoryStream.Create; if HttpPostURL(URL,Data,recv) then Result:= 'http post successful' else Result:= 'http post error'; recv.Free; end; |
Und so werden die Formulardaten codiert:
Delphi-Quelltext
1: 2: 3: 4: 5:
| Data := 'Formulardaten1=value1' + '&' + 'Formulardaten2=value2' + '&' + 'Submit=Submit';
Form1.Status.Simpletext:= httppost('http://eineBeispieladresse.de', Data); |
fertig
edit: ich sehe gerade du willst es als "multipart/form-data" verschicken ... ich glaube das läuft der Hase etwas anders ... aber soweit ich weiss, hat Synapse da auch schon was fertig.
edit2: Ich habe in meinem Programm auch ein wenig mit Webservern (ICS) rumgespielt, da habe ich auch mit Formularen gespielt, die Dateien versenden. Den Quelltext findet Du unter
www.mehrsurfen.de
Grüße jesus