AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi IDHttp - Post-Daten
Thema durchsuchen
Ansicht
Themen-Optionen

IDHttp - Post-Daten

Ein Thema von Tommy82 · begonnen am 26. Sep 2006 · letzter Beitrag vom 26. Sep 2006
Antwort Antwort
Tommy82

Registriert seit: 12. Dez 2005
61 Beiträge
 
Delphi 2007 Professional
 
#1

IDHttp - Post-Daten

  Alt 26. Sep 2006, 19:01
Hallo, mein Quelltext :
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection,
  IdTCPClient, IdHTTP;

type
  TForm1 = class(TForm)
    IdHTTP1: TIdHTTP;
    Button1: TButton;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
    Function SendPostData(Ahttp:TIdHttp; Const AtoURL: String; const aParams: TStrings) : String;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

Function TForm1.SendPostData(Ahttp:TIdHttp; Const AtoURL: String; const aParams: TStrings): String;
var lStream:TMemoryStream;
 lParams: TStringStream;
 I:Integer;
BEGIN
 result :='';
 if not assigned(aHTTP) then exit;
 lStream := TMemoryStream.Create;
 lParams := TStringStream.Create('');
 TRY
  AHttp.Request.ContentType := 'application/x-www-form-urlencoded';

  for i := 0 to aParams.Count-1 Do
   lParams.WriteString(aParams[I]+'&');
  TRY
   aHttp.Post(AtoURL, lParams, lStream)
  except
   on E: Exception do Showmessage ('Fehler bei der Übertragung: ' + E.Message);
  END;
  SetLength(Result,lStream.Size);
  lStream.Position := 0;
  lStream.ReadBuffer(Result[1],lStream.Size);
 finally
  lParams.Free;
  lStream.Free;
 END;
END;

procedure TForm1.Button1Click(Sender: TObject);
var sList: TStringList;
begin
 sList := TStringList.Create;
 try
  sList.Add('sid=325806239433722059');
  sList.Add('onr=4880911920');
  sList.Add('logd=32580');
  sList.Add('aufdat=26.06.06');
  sList.Add('frankatur=03');
  sList.Add('warenwert=1000,00');
  sList.Add('wwcurr=EUR');
  sList.Add('termart=F');
  sList.Add('terdat=26.10.06');
  sList.Add('nachnahme=2000');
  sList.Add('nncurr=EUR');
  sList.Add('txid=036190');
  sList.Add('ename1=Thomas Göttsching');
  sList.Add('ename2=');
  sList.Add('estr=Teststrasse1');
  sList.Add('eland=DE');
  sList.Add('eplz=32369');
  sList.Add('eort=Rahden');
  sList.Add('vtext=AVIS');
  sList.Add('etext=Tel-Nr');
  sList.Add('cca1=1');
  sList.Add('ccv1=FP');
  sList.Add('cci1=Panasonic TV');
  sList.Add('gew=60');
  sList.Add('gesdcbm=0');
  sList.Add('geslm=0,00');
  sList.Add('delcode=00');
  sList.Add('inarg=');
  {Memo1.Text := SendPostData(idHttp1,'http://212.184.95.90/cgi-bin/or?ostore.php',sList);}
  Memo1.Text := idhttp1.Post('http://212.184.95.90/cgi-bin/or?ostore',slist);
 finally
  slist.Free;
 END;
end;

end.
Hintergrund:
Es ist ein Programm, welches Daten aus unserer Warenwirtschaft direkt an unsere Spedition übergeben soll.

Wenn ich die Daten schicke, bekomme ich die meldung, dass die Daten nicht verarbeitet wurden. er findet aber die Seite!
was mache ic falsch?
  Mit Zitat antworten Zitat
Benutzerbild von SnuffMaster23
SnuffMaster23

Registriert seit: 13. Feb 2006
Ort: Kempten
253 Beiträge
 
#2

Re: IDHttp - Post-Daten

  Alt 26. Sep 2006, 19:09
Was macht denn TForm1.SendPostData?
Da blick ich nicht ganz durch.

In TForm1.Button1Click wird der Spaß doch schon weggeschickt.

Ich würde sagen der Fehler liegt am Server, dass er die Daten nicht annimmt
"Conspiracy is the poor man's mapping of the world" - Fredric Jameson
  Mit Zitat antworten Zitat
Tommy82

Registriert seit: 12. Dez 2005
61 Beiträge
 
Delphi 2007 Professional
 
#3

Re: IDHttp - Post-Daten

  Alt 26. Sep 2006, 19:13
Hallo,

die SendPostData war ein weiterer Versuch von mir, aber das hatte dieselbe wirkung.
Wie man sieht, ist diese Funktion aber nicht benutzt.

Wenn ic die Daten alle per Hand eigebe, und anschließend den passenden Button drücke, dann frisst der server alles. Warum also nicht auch aus einem Programm? wie kann der Server den Unterschied merken?
  Mit Zitat antworten Zitat
Benutzerbild von SnuffMaster23
SnuffMaster23

Registriert seit: 13. Feb 2006
Ort: Kempten
253 Beiträge
 
#4

Re: IDHttp - Post-Daten

  Alt 26. Sep 2006, 19:17
Nen Unterschied kann der Server höchstens am Header merken, die Daten haben ja immer die gleiche Qualität^^

Wo gibst du das denn von Hand ein?
"Conspiracy is the poor man's mapping of the world" - Fredric Jameson
  Mit Zitat antworten Zitat
Tommy82

Registriert seit: 12. Dez 2005
61 Beiträge
 
Delphi 2007 Professional
 
#5

Re: IDHttp - Post-Daten

  Alt 26. Sep 2006, 19:25
Webseiten-Titel

Da die WebId irgendwann veraltet, wird diese automatisch ausgelesen. Sollte aber zum Testen deinerseits funktionieren.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: IDHttp - Post-Daten

  Alt 26. Sep 2006, 19:47
hast du zugriff auf das Serverscript? dann könntest du dort Debugausgaben einbauen bzw. suchen warum die Daten nicht angenommen werden. Eventuell stimmt die Refferer nicht (oder wie man die Herkunfssteite nennt).
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Tommy82

Registriert seit: 12. Dez 2005
61 Beiträge
 
Delphi 2007 Professional
 
#7

Re: IDHttp - Post-Daten

  Alt 26. Sep 2006, 19:54
nein, habe ich leider nicht.
  Mit Zitat antworten Zitat
Tommy82

Registriert seit: 12. Dez 2005
61 Beiträge
 
Delphi 2007 Professional
 
#8

Re: IDHttp - Post-Daten

  Alt 26. Sep 2006, 19:56
ok, gibt es eine andere möglichkeit wie z.B. den Internet-Explorer öffnen, und dann ausfüllen? Dann sollte ja soweit alles richtig sein.
  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 04:45 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