Entwickler-Ecke

Internet / Netzwerk - Mail versenden ohne Outlook


Delete - Mi 03.02.10 12:58
Titel: Mail versenden ohne Outlook
Hallo
habe in der suche nichts konkretes gefunden
ich will ein formular was der benutzer ausfüllt mit einen klick
an meine email senden lassen können
Ohne das outlook startet.
Ich werd aus der suche nicht schlau
lg


Moderiert von user profile iconNarses: Topic aus VCL (Visual Component Library) verschoben am Mi 03.02.2010 um 12:44


BenBE - Mi 03.02.10 13:00

Man nehme Indy, um genau zu sein TIdSMTP, fülle die Properties aus und gut ist.

Codebeispiele gibt's hier im Forum zu Hauf.


Delete - Mi 03.02.10 14:26

Ja aber des funzt alles nicht bei mir


Dude566 - Mi 03.02.10 15:06

Das ist ja mal wieder eine Fehlerbeschreibung. :roll:


Delete - Mi 03.02.10 15:30

es gibt keine fehlerbeschreibung weil ich nicht weis wie ich des realisieren soll
auch anhand der demos nicht


Dude566 - Mi 03.02.10 15:35

Kann mir nicht vorstellen das du bei der Menge an Quellen nichts gefunden hast, aber naja hier haste mal ein Link:
http://www.delphi-treff.de/tutorials/netzwerk-und-internet/indy/page/8/


Delete - Mi 03.02.10 17:18

Danke erstma für den Link aber ich hab null Plan davon
könntest du es mir kurz erklären pls?
lg


Xentar - Mi 03.02.10 17:22

Was soll man da noch groß erklären?

Du hast ne Komponente IdSMTP, da stellst du den Server und ähnliches ein.
Dann hast du ne Komponente IdMessage, da trägst du den Text, Empfänger usw. ein.
Zum Schluss verschickst du die Message über die SMTP Komponente -> Fertig.

Programmieren lernt man nunmal durch lesen und ausprobieren..


Delete - Mi 03.02.10 17:49

Hab jetz schon bisschen was geschafft.
Mein Quellcode sieht so aus:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Button1: TButton;
    IdHTTP1: TIdHTTP;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Label4: TLabel;
    IdTCPClient1: TIdTCPClient;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  data: TIdMultiPartFormDataStream;
begin
  data := TIdMultiPartFormDataStream.Create;
  try
    { add the used parameters for the script }
    data.AddFormField('zu', Edit3.Text);
    data.AddFormField('betreff', Edit1.Text);
    data.AddFormField('text', Memo1.text);
data.AddFormField('von', Edit2.Text);

    { Call the Post method of TIdHTTP and read the result into TMemo }
    Memo1.Lines.Text := form1.IdHTTP1.Post('http://www.pup-boaard.de/mail.php', data);
  finally
    data.Free;
end;

end;

end.

und mein php code so:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
<?php
$text = stripslashes($text);
mail("$zu","$betreff","
$text",
"From: $von
Content-Type: text/html");
echo("E-Mail erfolgreich gesendet");
?>


Das Programm startet zwar nur wen ich eine Mail Absenden will kommt immerSocket error 11004
Was is da dran falsch??
lg


Delete - Mi 03.02.10 18:48

Kann mir den keiner sagen woran es liegtß????


Dude566 - Mi 03.02.10 18:53

Wozu denn jetzt PHP ich denke du willst die Email direkt mit deinem Programm via SMTP verschicken?


Delete - Mi 03.02.10 19:02

Ne ich sagte nie was von Smtp
nur ohne outlook halt


Dude566 - Mi 03.02.10 19:03

Ja dann erklär doch mal bitte ganz genau was du wie machen möchtest.


Delete - Mi 03.02.10 19:11

Ich will in meinen Programm ein email formular einbauen,.
wen man in mainmenü auf Bericht geht kommt des mail formular des er ausfüllt
und wen er auf senden geht soll es an meine Emailadresse gesendet werden


SvenAbeln - Mi 03.02.10 19:23

Kann es sein, das du die Adresse falsch eingegeben hast?

Mit 'http://www.pup-boaard.de/mail.php' bekomme ich:
Fehler: Server nicht gefunden

Wenn ich da aber ein 'a' lösche kommt:
E-Mail erfolgreich gesendet


Delete - Mi 03.02.10 20:18

Dankeschön da war echt ein a zu viel drin
nur jetz is es so das die mail aber nicht bei meinen mail postfach ankommt
lg


Xentar - Mi 03.02.10 20:20

Was steht denn danach im Memo drin?
Das könnte nun genau so gut ein Problem mit deinem PHP Skript sein.


Delete - Mi 03.02.10 20:37

Hey
Ich habe jetzt mein Php Script auf nen anderen server raufgemacht
und was soll ich sagen :-) es läuft
nur zwei sachen stören mich noch.
1. Wen man auf Senden geht dauert es ne kurze zeit als wie wen es hängen würde. Kann
man da was ändern??
2. In der Email steht immer vorm Text Content-Type: text/html
kan man des wegmachen irgendwie? Im php script hätt ich diese zeile schon weggemacht aber dan kan man keine mails mehr versenden
lg


Delete - Fr 19.02.10 21:13

hi
sorry das ich dieses alte Thema wieder ausgraben musste aber bis jetzt ging mein Mail Client
Problemlos.
Aber jetzt wen ich auf absenden Klicke kommt ein Fenster mit Download gestartet danach
ein Fenster mit Download Beendet und das Zweimal.
Ich weis aber nicht wieso.
lg

Edit:
Kann es vllt daran liegen das ich bei meinen Aktuellen Programm enimal die idHTTP komponente benutze und dann noch einmal bei dem Mail Client den ich in des Programm eingebunden habe?
lg


Delete - Di 02.03.10 04:07

HAt den keiner eine Iddee???


Xion - Di 02.03.10 15:04

*suche benutzt*

http://www.delphi-forum.de/viewtopic.php?t=48271&highlight=idsmtp

Da ist doch ein prima Code wie man ne Mail verschicken kann.


elundril - Di 02.03.10 15:14

user profile iconXion hat folgendes geschrieben Zum zitierten Posting springen:
*suche benutzt*

http://www.delphi-forum.de/viewtopic.php?t=48271&highlight=idsmtp

Da ist doch ein prima Code wie man ne Mail verschicken kann.


auch wenn du ne prüfung hast, könntest du ev. bitte den ganzen Thread lesen und nicht nur die Überschrift?

lg elundril