Как с помощью модуля Net::SMTP отправить письмо с вложением? Вложение 2 файла: 1.txt, 2.html, оба находятся в тойже дирректории что и скрипт.
>Как с помощью модуля Net::SMTP отправить письмо с вложением? Вложение 2 файла:
>1.txt, 2.html, оба находятся в тойже дирректории что и скрипт.use Net::SMTP;
use MIME::Lite;my $mime_msg = MIME::Lite->new(
From => "support@microsoft.com",
To => "email@address.com",
Subject => "subj",
Type => "TEXT",
Data => "сообщение"
) or die "Error creating MIME body: $!n";$mime_msg->attach(
Type => 'text/plain',
Path => '1.txt',
) or die "Error attaching test file: $!n";$mime_msg->attach(
Type => 'text/html',
Path => '1.html',
) or die "Error attaching test file: $!n";my $message_body = $mime_msg->body_as_string();
$smtp = Net::SMTP->new("smtp@server.com");
die " couldn't connect to server" unless $smtp;$smtp->mail("support@microsoft.com");
$smtp->to("email@address.com");
$smtp->data();
$smtp->datasend($message_body);
$smtp->dataend();примерно так
Спасибо, но MIME::Lite не могу использовать...
Религиозные причины?
>Религиозные причины?Да, можно сказать так или почти....
На данный момент реализовал отправку через sendmail....
Интересно как через стандартный модуль отправлять, система старая, работает, новые модули не ставятся.... Обнавлять что-либо не хочется, да и много чего там завязано, опасно.... Позже сделаю не заметный мягкий переход на новое железо и соответственно систему....
>>Религиозные причины?
>
>Да, можно сказать так или почти....
>На данный момент реализовал отправку через sendmail....
>Интересно как через стандартный модуль отправлять, система старая, работает, новые модули не
>ставятся.... Обнавлять что-либо не хочется, да и много чего там завязано,
>опасно.... Позже сделаю не заметный мягкий переход на новое железо и
>соответственно систему....ну и положи Мime/Lite.pm в директорию со скриптом, и будет на ура работать и без влияния на стандартную систему.
>ну и положи Мime/Lite.pm в директорию со скриптом, и будет на ура
>работать и без влияния на стандартную систему.а поподрбнее можно... mime::lite по идее тянет много модулей...
Тогда вам стоит разобраться с cpan, особенное внимание обратить на:
Typical frequently used settings:--install_base /home/xxx # different installation directory
Можно его даже в одной сессии поменять, в результате получите дерево, которое нужно положить рядом со скриптом в вашей системе.
Осталось правда узнать что такого требует MIME::Lite, если учесть следущее
MIME::Lite is designed to take advantage of a variety of external modules
if they are not present then MIME::Lite will attempt to do its best
but its strongly recommend that you install them.These modules are:
Mail::Address
MIME::Types
File::Basename
MIME::Base64
MIME::QuotedPrint
То бишь рекомендуется, но не обязательно
Разобрался, немного, для передачи двоичных форматов надо использовать.... MIME::Base64