Автор Тема: Отправка почты  (Прочитано 2899 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Satell

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 16
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Отправка почты
« : 15 Марта 2007, 20:04:51 »
почта не отправляется, ни через sendmail, ни через Net::SMTP на mail.ru, в чём проблема? мне нужно чтобы письмо выглядело, как будто отправлено из почтовой программы

#!/usr/bin/perl
open (SENDMAIL, "|/usr/sbin/sendmail -t") or die "sendmail not ready";
print SENDMAIL "From: John Doe \\n";
print SENDMAIL "To: Frank Smith print SENDMAIL "Reply-To: Frank Smith \\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;
Оптимизация и продвижение сайтов

Оффлайн DartSidius

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 309
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Отправка почты
« Ответ #1 : 16 Марта 2007, 02:38:59 »
Попробуй так для sendmail:

#!/usr/bin/perl
open (SENDMAIL, "|/usr/sbin/sendmail -t") or die "sendmail not ready";
print SENDMAIL "Content-Type: text/plain; charset=windows-1251\\n";
print SENDMAIL "From: John Doe \\n";
print SENDMAIL "To: Frank Smith print SENDMAIL "Reply-To: Frank Smith \\n";
print SENDMAIL "Subject: Test.\\n\\n";
print SENDMAIL "It\'s just test!!!";
close (SENDMAIL) or warn "sendmail didn\'t close nicely";

вторым способом я не прользовался, но можно ещё с мопощью например Mime::Lite...она и через SMTP тож отсылает

синтаксис такой:

use MIME::Lite;
MIME::Lite->send(\'sendmail\', \'/usr/sbin/sendmail -t\');

or

MIME::Lite->send(\'smtp\', "smtp.myisp.net", Timeout=>60);

$msg = MIME::Lite->new(
   From    =>$from,
   Bcc     =>"$to",
    Subject =>$subject,
   Type    =>\'multipart/mixed\'
   );
$msg->attach(Type     =>\'TEXT\',
   Data     =>"$text"
);

$msg->send();

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Отправка почты
« Ответ #2 : 16 Марта 2007, 12:28:04 »
Использовать Net::SMTP
Указать ВСЕ хедеры, From обязательно.
Включить дебаг
$smtp = Net::SMTP->new(\'smtp.mail.ru\', Debug=>1);
и читать что в STDERR пишется.
The documentations is your friend

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28