Das eine sendmail-script sendet, das andere nicht - wieso?
Aquariophile
- perl
Hallo!
Es handelt sich um 2 Perlscripte.
Beide sollen E-Mails versenden.
Alle beide laufen am selben Server,
sendmail ist installiert,
und sendmail funktioniert auch, sonst würde das eine davon ja nicht gehen.
Eines der beiden Mails versendet die Mail.
Das zweite nicht.
Warum?!?
Trotz langem suchen ist da irgendwie kein Fehler im zweiten script.
#!/usr/bin/perl
use CGI;
use strict;
print "Content-type:text/html\n\n";
my $mailprog = '/usr/sbin/sendmail -t';
open(MAIL,"|$mailprog");
print MAIL "To: aquariophile@gmx.de\n";
print MAIL "From: foo@bar.com\n";
print MAIL "Subject: aaaaa \n\n";
print MAIL "Das ist eine Mail gesendet durch aaaaa.pl\n\n";
close (MAIL);
print "<html><head><title></title></head><body>Danke</body></html>";
#!/usr/bin/perl
print "Content-type: text/html\n\n";
$to='aquariophile@gmx.de';
$from= 'aquariophile@gmx.de';
$subject='bbbb';
open(MAIL, "|/usr/sbin/sendmail -t");
print MAIL "To: $to\n";
print MAIL "From: $from\n";
print MAIL "Subject: $subject\n\n";
print MAIL "Diese Mail wurde durch bbbbb.pl gesendet\n";
close(MAIL);
print '<html><head><title></title></head><body>';
print system('which sendmail');
print '<p>foo</p></body></html>';
===================================================
Danke!
Aquariophile
Sup!
$to='aquariophile@gmx.de';
Vielleicht liegt es daran (Spekulation):
(Larry Wall, Programming Perl 2nd Edition, 1996 O'Reilly, Seite 39, letzter Absatz: "Note that a single-quoted string must be separated from a preceding word by a space, since a single quote is a valid (though deprecated) character in an identifier; see Chapter 5.")
Hast Du es schon mit perl -w versucht?
Gruesse,
Bio
Hi,
versuch doch einfach
$to = "aquariophile@gmx.de";
$from = "aquariophile@gmx.de";
TomC