Hallo,
- Unter dieser Site benutze ich mehrere Scripts, die eMails via sendmail (Linux) verschicken. Die Mails werden korrekt versendet, falls ich eine feste eMail-Adresse als Adressaten hardcodiert angebe. Sobald ich allerdings als Adressaten den Inhalt eines Formularfeldes angebe (mittels param('eMail') z.B.), so tritt es häufig auf, dass die eMails nicht bei diesem eintreffen.
Vielleicht hat der Absender keine gültige Email-Adresse angegeben.
Es kann auch sein, daß die Empfängerdomain keinen gültigen MX-Record im DNS eingetragen hat. Da gibts viele Ursachen.
Hier nur ein paar DInge, die mir auf die Schnelle aufgefallen sind:
»» $error = Schulkameraden::IOFunc::sendMail( "Absender-Account@domain.de",
entweder
"Absender-Account@domain.de"
oder besser
'Absender-Account@domain.de'
An dem kanns auch liegen, wenn der Empfänger-Server mämlich keinen Absender mit dem Namen 'Absender-Account.de' erlaubt. Das kommt nämlich als erster Parameter zu Deiner sendMail-Funktion. In Perl 5.6 würde dies übrigens eine Fehlermeldung verursachen, wenn @domain nicht vorher definiert worden wäre.
sub sendMail {
»» my($sender, $addressee, $subject, $contents);
»» $sender = $_[0];
»» $addressee = $_[1];
»» $subject = $_[2];
»» $contents = $_[3];
my($sender, $addressee, $subject, $contents) = @_;
erfüllt den gleichen Zweck und ist einfacher zu kodieren;-)
Grüße
Klaus