problem mit perl mail script

Bash, Shell, PHP, Python, Perl, CGI
conym18
Posts: 137
Joined: 2003-01-21 12:41

problem mit perl mail script

Post by conym18 »

hallo,

ich habe folgendes mailscript.

Code: Select all


        open(MAIL,"|$mailprog -t") || die "Kann nicht öffnen $mailprog!n";
        print MAIL "To: $newmail[$i]n";
        print MAIL "From: mydomain<info@mydomain>n";
        print MAIL "Subject: irgend ein betreffn";
        print MAIL "Content-type: text/htmlnn";
        print MAIL "<html><body bgcolor="#CCFF00" topmargin="0">n";
        print MAIL "<font face="verdana" size="1" color="#405060">n";
        print MAIL "<br><br>";
        print MAIL "hallo,<br><br>";
        print MAIL "<br>";
        print MAIL "<br>";
        print MAIL "";
        print MAIL "";
        print MAIL "<br><br>";
        print MAIL "viel spass<br><br><br>";
        print MAIL "xxx";
        print MAIL "<br><br><br>";
        print MAIL "</font></html>n";
        close(MAIL);
        $a=$i+1;
        print "done $a von $laengen";
        sleep(7); #angabe in sek.

es fkt. eigentlich alles bis auf folgendes wenn ich die mail bekomme:

- im von: steht root
- im betreff steht nichts
- im nachrichten steht alles ab Content-type: text/html im quelltext.



was habe ich falsch gemacht?

danke für antworten
gamecrash
Posts: 339
Joined: 2002-05-27 10:52

Re: problem mit perl mail script

Post by gamecrash »

Gibt's da kein CPAN-Modul für? Irgendwie so Mail::Multipart::Message oder so glaub ich. Damit müsst's leichter gehn...
wgot
Posts: 1675
Joined: 2003-07-06 02:03

Re: problem mit perl mail script

Post by wgot »

Hallo,

die korrekte Zeilenendekennung in der SMTP-Kommunikation ist rn und nicht n. Stören sich aber nur manche Mailserver dran.
print MAIL "To: $newmail[$i]n";
Woher kommt @newmail? Aus einer Datei ausgelesen und die Zeilenendekennung der Datei hängt an $newmail[$i] noch dran und Du hast somit doppelte Zeilenendekennung. Abhilfe: chomp();
print MAIL "Content-type: text/htmlnn";
Wenn schon HTML-Mailschrott, dann besser multipart/alternative, damit die HTML-Verweigerer auch eine Plain-Text-Komponente haben. Macht aber dann weiter unten noch eine ganze Menge zusätzliche Arbeit (boundaries usw).

Gruß, Wolfgang