email link in "perl mail"
anna
- perl
0 fastix0 Philipp Hasenfratz0 anna
hallo,
ich versuche eine aktiven link auf meine email zu erzeugen => doch alles was passiert ist => er schreibt mir den html-code (<a href=\mailto: ....) ins mail.
hatte nicht gedacht, dass diese aufgabe sich zu einem riesen problem entwicklet.
brauche dringend hilfe. danke
hier der verflixte teil meines perl-codes =>
open (MAIL,"|/usr/lib/sendmail -t");
print MAIL "To: $Mail@$Domain\n";
print MAIL "From: &myMail@$myDomain\n";
print MAIL "texte ...";
print MAIL "eMail: ";
print MAIL "<A HREF= "mailto:$mymail@$myDomain">$mymail@$myDomain</A>";
print MAIL "\n";
close MAIL;
hallo,
ich versuche eine aktiven link auf meine email zu erzeugen => doch alles was passiert ist => er schreibt mir den html-code (<a href=\mailto: ....) ins mail.
Ja, Hallo!
Das macht Perl ganz richtig. Und das E-Mail-Programm auch :)
Woher soll das e-Mail-Programm wissen, daß Du eine Darstellung in HTML wünschst? Du musst einen Header senden.
Es kann aber auch sein, es genügt vor dem mailbody ein "<html>" zu senden und danach ein "</html>" Outlook wir es schon richten... die Mails gehen ja ausschließlich an Dich. Als Standardverfahren zum Versenden von Mails würde ich das aber nicht verwenden...
fastix
Halihallo anna
open (MAIL,"|/usr/lib/sendmail -t");
perldoc Net::SMTP
eine andere Möglichkeit, Mails zu versenden.
print MAIL "To: $Mail@$Domain\n";
print MAIL "From: &myMail@$myDomain\n";
Der Header wird durch eine Newline vom Body getrennt:
print MAIL "To: ...\n";
print MAIL "From: ...\n";
print MAIL "Subject: ...\n";
print MAIL "Content-Type: text/html\n";
print MAIL "\n"; # hier ist der Header des Mails fertig. Und jetzt erst, dürfen
# Maildaten kommen...
print MAIL "texte ...";
print MAIL "eMail: ";
print MAIL "<A HREF= "mailto:$mymail@$myDomain">$mymail@$myDomain</A>";
perldoc MIME::Entity;
Eine bei weitem bessere Möglichkeit, E-Mail-"Quelltexte" zu erstellen.
Beispiel:
use MIME::Entity;
my $mail_entity = MIME::Entity->build(
From => 'deine@adresse.de',
To => 'seine@adresse.de',
Subject => 'test subject',
Type => 'text/html',
Data => 'texte ...
eMail: <a href="mailto: ...">...</a>'
);
print MAIL $mail_entity->as_string;
Viele Grüsse
Philipp
Danke Phillip, funktioniert fantastisch.
lg anna