T.B.: und (E-MAIL) sendmail

Ich möchte mit Perl eine E-Mail verschicken. Dafür nutze ich folgende Befehle:

.
        .
        .
open (MAIL, "/usr/sbin/sendmail -t ")\n";
print MAIL "To: Bestellung@Thermokissen.de\n";
print MAIL "From: \n";
print MAIL "Subject: Bestellung\n";
print MAIL "Test\n";
close (MAIL);
        .
        .
        .

Beim starten dieser Datei (http://www.thermokissen.de/cgi-Thermokissen/bestellung.pl)erhalte ich folgende Fehlermeldung:

Die Seite kann nicht angezeigt werden.

Die gewünschte Seite kann nicht angezeigt werden.
        .
        .
        .
HTTP 500 - Interner Serverfehler
Internet Explorer

Entferne ich aber die oben genannten Befehle, so läuft der Rest des Scripts einwandfrei. Was mache ich falsch?

MfG
T.B.

  1. Hi,

    ändere mal den open-Befehl:

    open (MAIL, "/usr/sbin/sendmail -t ")\n" or die "Kann Sendmail nicht oeffnen: $!";

    Anschließend sollte im Error-Log ggf. eine Fehlermeldung stehen. Dann solltest Du, wenn Du schon einen From-Header einfügst, dort auch eine Adresse angeben (das "@" wie bei "To:" maskieren). Die wahrscheinlichste Ursache für den Fehler ist aber, daß Du nach den Headerzeilen keine Leerzeile einfügst. Nach dem Subject also noch ein zweites "\n" ausprinten. Wenn das alles nicht hilft, teste das Script mal mit "perl -c script.pl" und "perl -w script.pl".

    Cheatah

    1. Vielen Dank für deine Hilfe. Ich habe den Fehler (\n" hinter open (MAIL...)) durch deinen Tip mit der Fehlersuche durch Perl gefunden und jetzt läuft der Script Problemlos!

      Herzlichen Dank
            T.B.