PDA

Просмотр полной версии : отправка почты


Satell
15.03.2007, 21:15
почта не отправляется, ни через sendmail, ни через Net::SMTP на mail.ru, в чём проблема?
мне нужно чтобы письмо выглядело, как будто отправлено из почтовой программы

#!/usr/bin/perl
open (SENDMAIL, "|/usr/sbin/sendmail -t") or die "sendmail not ready";
print SENDMAIL "From: John Doe <joe\@mail.ru>\n";
print SENDMAIL "To: Frank Smith <frank\@mail.ru\n";
print SENDMAIL "Reply-To: Frank Smith <frank\@mail.ru>\n";
print SENDMAIL "Subject: Test.\n\n";
print SENDMAIL "It's just test!!!";
close (SENDMAIL) or warn "sendmail didn't close nicely";

#!/usr/bin/perl
use Net::SMTP;
$smtp = Net::SMTP->new('smtp.mail.ru'); # Ваш сервер!
$smtp->mail('joe@mail.ru');
$smtp->to('frank@mail.ru');
$smtp->data();
$smtp->datasend("To: frank@mail.run");
$smtp->datasend("n");
$smtp->datasend("Hello ADMIN!!!!!! :-)n");
$smtp->dataend();
$smtp->quit;

Isis
15.03.2007, 21:52
Обязательно перл?

MegaDeth
15.03.2007, 22:50
\n наверное а у тебя To: frank@mail.run")
хотя с перлом не дружу =) действительно, почему перл? пиши на пшп =)

valiko
15.03.2007, 23:28
замени "n" на "\n"
#!/usr/bin/perl
use Net::SMTP;
$smtp = Net::SMTP->new('smtp.mail.ru'); # Ваш сервер!
$smtp->mail('joe@mail.ru');
$smtp->to('frank@mail.ru');
$smtp->data();
$smtp->datasend("To: frank@mail.ru\n");
$smtp->datasend("From: joe@mail.ru\n");
$smtp->datasend("Subject: Hello\n");
$smtp->datasend("Return-Receipt-To: joe@mail.ru\n");
$smtp->datasend("\n");
$smtp->datasend("Hello ADMIN!!!!!! :-)\n");
$smtp->dataend();
$smtp->quit;