AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Formular ausfüllen u. abschicken
Thema durchsuchen
Ansicht
Themen-Optionen

Formular ausfüllen u. abschicken

Ein Thema von Crishnu · begonnen am 9. Dez 2006 · letzter Beitrag vom 9. Dez 2006
Antwort Antwort
Crishnu

Registriert seit: 28. Apr 2005
22 Beiträge
 
#1

Formular ausfüllen u. abschicken

  Alt 9. Dez 2006, 07:46
Hallo!

Ich habe ein Problem mit der indy Komponente, konkret will ich dieses Formular mit der indy http Komponente ausfüllen, abschicken und die zurückgegebene html Seite auswerten:

Code:
<form action="test.php" enctype="multipart/form-data" method="post">
<input type="file" name="datei"> <input type="submit" value="Los">
Ich hab schon hier im Forum gesucht, aber leider nichts passendes gefunden.
Bin für jede Hilfe dankbar.

MFG
  Mit Zitat antworten Zitat
DocBorn

Registriert seit: 7. Jul 2006
Ort: Bonn
26 Beiträge
 
#2

Re: Formular ausfüllen u. abschicken

  Alt 9. Dez 2006, 09:08
ich bin gerade nicht sicher, was die indys so können, aber ich denke mal du willst nicht wirklich das Formular (in irgendeinem Browser o.Ä.) ausfüllen sondern die URL so aufrufen als hättest du das Formular aufgerufen. Wenn dem so ist dann musst du folglich einen POST-Request machen (method=post"), des weiteren willst du hier ja auchnoch eine Datei mitschicken und dazu muss das Formular noch encodiert werden. Genau das gleiche Problem habe ich vor einer Weile auch mal gelöst *such*
Also dazu erstmal die MsMultiPartFormData.pas einbinden (Anhang) und dann kannst du was in dem Stil machen:

Delphi-Quellcode:
var
  MultiPartFormDataStream: TMsMultiPartFormDataStream;
  HttpServer, Response: String;
begin

  // Objekte instanzieren
  MultiPartFormDataStream := TMsMultiPartFormDataStream.Create;

  try
      // Content-Type bestimmen
      httpMain.Request.ContentType := MultiPartFormDataStream.RequestContentType;

      // andere Formular-Felder übergeben
      MultiPartFormDataStream.AddFormField('EinAnderesFeld', 'dadum');

      // Datei laden
      MultiPartFormDataStream.AddFile('datei', 'C:\autoexec.bat', '');

      // Anfrage vorbereiten
      MultiPartFormDataStream.PrepareStreamForDispatch; { You must make sure you call this method *before* sending the stream }
      MultiPartFormDataStream.Position := 0;

      try

        // Anfrage stellen
        Response := httpMain.Post('http://www.microsoft.com/test.php, MultiPartFormDataStream);

except
// Upload fehlgeschlagen
end;
end;
finally
MultiPartFormDataStream.Free;
end;
end;
viel Erfolg.

Lg Lars
Angehängte Dateien
Dateityp: pas msmultipartformdata_495.pas (3,6 KB, 47x aufgerufen)
  Mit Zitat antworten Zitat
Crishnu

Registriert seit: 28. Apr 2005
22 Beiträge
 
#3

Re: Formular ausfüllen u. abschicken

  Alt 9. Dez 2006, 10:59
Ok, werds versuchen

Danke

Edit: funktioniert 1 a
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:40 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