Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi HTML-<Form> simulieren, per POST verschicken (https://www.delphipraxis.net/19945-html-form-simulieren-per-post-verschicken.html)

c113plpbr 11. Apr 2004 14:44


HTML-<Form> simulieren, per POST verschicken
 
Ich möchte folgende HTML-Form simulieren:
Code:
<form name="f1" action="abc.php" method="POST">
<input type="hidden" name="id" value="1">
<input type="image" name="bild" value="x" src="bild.jpg" border="0">
</form>
Wenn man nun auf das Bild klickt, wird der Punkt an dem man geklickt hat in x und y-Koordinaten übergeben. Eine GET-Addresse würde so aussehen:
Code:
abc.php?id=1&bild.x=54&bild.y=32
Die obige HTML-Form will ich in Delphi 'simulieren', d.h. sie soll nie angezeigt werden, und das ganze soll dann per POST mit meinen eigenen Werten 'versandt' werden.
Ich hab mich so daran versucht, aber mit dem Bild hab ich schwierigkeiten:
Delphi-Quellcode:
var
  data : TIdMultiPartFormDataStream;
  IdHTTP1: TIdHTTP;
begin
  data := TIdMultiPartFormDataStream.Create;
  IdHTTP1 := TIdHTTP.Create(Form1);
  try
    data.AddFormField('id', '1');
    data.AddFormField('bild.x', '54');
    data.AddFormField('bild.y', '32');

    Memo1.Lines.Text := IdHTTP1.Post('abc.php', data);
  finally
    data.Free;
  end;
end;
Das ganze scheint so nicht zu funktioniernen. Kann mir jemand helfen?

thx, Philipp

fkerber 11. Apr 2004 15:15

Re: HTML-<Form> simulieren, per POST verschicken
 
Hi!

Was genau funktioniert denn nicht? Gibt es Fehlermeldungen (und welche?)

Ciao fkerber

c113plpbr 11. Apr 2004 15:39

Re: HTML-<Form> simulieren, per POST verschicken
 
Alle Variablen, sogar die id-Variable sind undefiniert.

ciao, Philipp

c113plpbr 12. Apr 2004 13:40

Re: HTML-<Form> simulieren, per POST verschicken
 
Soooo ... ich glaub, ich habs:
Delphi-Quellcode:
var
  data : TStringList;
  IdHTTP1: TIdHTTP;
begin
  data := TStringList.Create;
  IdHTTP1 := TIdHTTP.Create(Form1);
  data.Add('id=1');
  data.Add('bild.x=54');
  data.Add('bild.y=32');
  Memo1.Lines.Text := IdHTTP1.Post('abc.php', data);
end;
Manche Codes in der DP sind auch so verwirrend ... so geht es jedenfalls.

Zuerst denkt man sich so was kompliziertes aus, und dann geht es so einfach ... :wall:

ciao, Philipp


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz