Entwickler-Ecke

Sonstiges (Delphi) - TMemo+Formular problem...


Chef15 - Di 28.01.03 04:14
Titel: TMemo+Formular problem...
Hallo,
habe noch volgendes problem:

Ich sende ein Formular mit TNMHTTP mit Get.
Die URL sieht volgender maßen aus:

http://www.onlinewebservice6.de/cgi-bin/formmail.pl?id=42776&vorname='+Vorname.text+'&name='+name.text+'&E-Mail='+email.text+'&homepage='+homepage.text+'&tutorial='+Memo1.Lines.Text+'.........

Alles funktioniert soweit, außer der Text kommt nicht an den man in TMemo geschrieben hatt. Wenn man nur eine Zeile schreibt in TMemo, dann geht es. Habe es schon mit einer String Variable probiert:


Quelltext
1:
2:
3:
4:
5:
var i: Integer;
begin
  for i:=0 to Memo1.Lines.count-1 do
  b:=b+Memo1.Lines[i]+'%0D%0A';
end;


Aber dann kommt nicht der ganze Text an, sondern nur par Zeilen.
Weis jemand eine lösung, wie ich das Problem lösen kann, das der ganze Text ankommt?

MFG
Sven!


foxy - Di 28.01.03 15:16

vielleicht ne byte begrenzung von seiten des HTML?
versuch doch in schleife zu senden also sede immer ein stück bis alles weg ist und füge das wieder zusammen ......


Sivar - Di 28.01.03 15:31

Du benutzt ein TMemo als Edit-Feld?
Beachte: Wenn in einem TMemo eine Zeile eingegeben wird (also inkl. "Enter") hast Du noch die Zeilenschaltung drann.

Versuchs mal mit einem TEdit! Das sollte für solche Aufgaben besser geeignet sein als ein TMemo.


Chef15 - Mi 29.01.03 21:25

Hi,

mit einen TEdit geht es auch nicht :-(.
Was mir aufgfallen ist, ein Zeilenbruch mache ich so: %0d%0a.
Wenn das Formular angekommen ist, ist auch der Zeilenbruch da, bei den par Zeilen die nur ankommen. Ich habe mal bei der Kompo NMHTTP InputFileMode auf True gesetzt. Und nacher die HTML Seite angeschaut.
Da zeigt er dann nochmal an, was man eingegeben hatt. Was mir aufgefallen ist, das bei dem Formular kein Zeilenbruch dabei ist.
Darum sendet er den ganzen Text nicht. Wenn man von meiner Page ein Tutorial oder Delphi Tip&Trick sendet und es rufst sich das "Danke" Formular auf ist ein Zeilenbruch dabei. Also ich glaube das ich ein Zeilenbruch anders machen muss, als so &0d%0a.

Hatt jemand eine idee?

MFG
Sven!


smiegel - Mi 29.01.03 23:18

Hallo,

ich mache es immer mit #13#10.


Quelltext
1:
2:
3:
4:
var s:String;
  ...
  s:='Dies ist ein Text'+#13#10+'Mit Zeilenumbruch.';
  ...