Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вечный вопрос про почту 
V
    Опции темы
Throne
  Дата 11.7.2006, 19:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 10.5.2006

Репутация: нет
Всего: 2



Огромная просьба не писать что надо было юзать поиск и что про это милион раз говорили.
Пожалуйста напишите как перлом сформировать письмо и отправить на электронную почту.
И скажите можно ли как-то заставить его отправить целеком страницу на которой сейчас юзер при условии, что она сформирована динамически?
если кто помнит где это обсуждалось или у кого-то удачнее с поиском, чем у меня киньте ссылку пожалуйста.
Заранее спаибо. 
--------------------
Компьютер — это наредкость тупая вещь, но считает с феноменальной скоростью. 
PM MAIL   Вверх
shootnix
Дата 11.7.2006, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 3.9.2005
Где: Казахстан

Репутация: 2
Всего: 2



Код

open MAIL, "|/usr/sbin/sendmail -oi -t";
print MAIL "From: shootnix\@forever.kz\n";
print MAIL "To: shootnix\@mail.ru\n";
print MAIL "Subject: simple test\n\n";
print MAIL "This is a simple test.";
close MAIL;


Так отправлять письмо. А страницу... ну это ж, наверно, так же как и просто текст? Надо только знать, что за страницу высылать и не проблема же её потом снова сформировать при отправке. Там, по айди или ещё по какой куке идентифицировать... 
PM WWW ICQ   Вверх
arto
Дата 11.7.2006, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1495
Регистрация: 31.10.2004

Репутация: 38
Всего: 40



perldoc MIME::Lite::HTML 
PM MAIL ICQ   Вверх
Celdox
Дата 11.7.2006, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 5.7.2006

Репутация: нет
Всего: нет



Ну, я так делаю.

Код

      my $msg = MIME::Lite->new(
                         From    => <вставь от кого>,
                         To      =>  <вставь от кому>,
                         Subject => <вставь тему>,
                         Type    => 'multipart/mixed'
                      );  
  
      ### Add parts (each "attach" has the same arguments as "new"):
      $msg->attach(
                   Type     => 'text/html',
                         
                   Data     => <вставь текст>
                      );
  
      $msg->attach(
                         Type     => 'text/xml',
                         Filename => <вставь имя файла>,
                         Disposition => 'attachment',
                         Data     => <вставь текстовые данные>
                      ); 
  

         MIME::Lite->send('smtp', "".<вставь smtp_host - т.е. сервер свой>, Timeout=>60);

         $msg->send;         
           
           
         print "\n=== Sent \n\n";  



Вот. (Если у гурцов есть пожелания, сам несомненно прислушаюсь!)

Да и вообще, вот тут http://www.getinfo.ru/article529.html это вроде тоже есть.
  

Это сообщение отредактировал(а) Celdox - 11.7.2006, 22:43
PM MAIL   Вверх
Throne
Дата 23.7.2006, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 10.5.2006

Репутация: нет
Всего: 2



Послал вот так:
Код

#!/usr/bin/perl
print "Content-Type: text/html\n\n";
use MIME::Lite;

my $msg = MIME::Lite->new( From    => '[email protected]',
                           To      => '[email protected]',
                           Subject => 'Тема письма',
                           Type    => 'text/plain; charset=windows-1251',
                           Data    => 'текст письма' );

$msg->send();
И чёто не заработало  

Это сообщение отредактировал(а) Throne - 23.7.2006, 15:45
--------------------
Компьютер — это наредкость тупая вещь, но считает с феноменальной скоростью. 
PM MAIL   Вверх
Throne
Дата 30.7.2006, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 10.5.2006

Репутация: нет
Всего: 2



shootnix ,
Скажи как изменить (если надо) text/plain на text/html smile  
--------------------
Компьютер — это наредкость тупая вещь, но считает с феноменальной скоростью. 
PM MAIL   Вверх
nitr
Дата 31.7.2006, 01:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



=) измени Type как тебе надо, а в Data  пиши текст письма в виде хтмл =)  


--------------------
PM   Вверх
Throne
Дата 2.8.2006, 08:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 10.5.2006

Репутация: нет
Всего: 2



Цитата(nitr @ 31.7.2006,  01:06)
=) измени Type как тебе надо, а в Data  пиши текст письма в виде хтмл =)

Я имел ввиду в примере shootnix'a; как я понял, надо просто добавить строчку:
Код

print MAIL "Type: text/html"

А скажи как аттачи вставлять в сендмаиле.
ЗЫ MIME::Lite у меня так нормально и не заработал, выдает ашибку об авторизации, а как её пройти я ненаю.

Это сообщение отредактировал(а) Throne - 2.8.2006, 08:33
--------------------
Компьютер — это наредкость тупая вещь, но считает с феноменальной скоростью. 
PM MAIL   Вверх
Celdox
Дата 2.8.2006, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 5.7.2006

Репутация: нет
Всего: нет



Если ошибка авторизации на отсыл писем, то стоит попробовать поставить на почтовом серваке
Open relay
чтобы не мучиться. Но, это только для начала, потом стоит разобраться.
PM MAIL   Вверх
Throne
Дата 2.8.2006, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 10.5.2006

Репутация: нет
Всего: 2



Повторюсь:
как я понял, при работе с sendmail'ом, надо просто добавить строчку:
Код

print MAIL "Type: text/html"
Это так? мне больше ничего не надо smile
--------------------------------------------------------------
Путем проб и ошибок было доказанно, что это не так.
ЛЮДИ! Хотябы ссылку дайте где это написано, если не хотите объеснять. Мне нужно всего-лишь то, как в sendmail'е указать MIME тип.

Это сообщение отредактировал(а) Throne - 2.8.2006, 19:20
--------------------
Компьютер — это наредкость тупая вещь, но считает с феноменальной скоростью. 
PM MAIL   Вверх
comtat
Дата 2.8.2006, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: нет
Всего: 71



Я делаю так 
Код

#!/usr/bin/perl
use DBI;
use strict;

#Рассылка зверям информационных писем
my $s=DBI->connect ("DBI:mysql:дб:хост", "vano", "vfkbrjdf", {PrintError=>1, RaiseError=>1});
my $s0=$s->prepare (qq{SELECT address FROM Records WHERE address IS NOT NULL AND address!="" ORDER BY user_id, record_id});
$s0->execute();
while (my ($address)=$s0->fetchrow_array())
{
    chomp($address);
    my $inp = open (DOC, "./message.htm");
    if (defined($inp))
    {
        open (SENDMAIL, "|/usr/sbin/sendmail -oi -t");
        print SENDMAIL qq{From:ОАО "Комтат" <calculator\@хост.ru>
To: <$address>
Subject: Информационное письмо
MIME-Version: 1.0
Content-Type: text/html;
     charset="koi8-r"

};
        while (defined(my $line = <DOC>))
        {
            print SENDMAIL $line;
        }
        close (ACT);
        close (SENDMAIL);
    print ("$address\n");
    }
}

$s0->finish();
$s->disconnect();

где message.htm такого вида
Код

<HTML>
<BODY>
<H1>Блаблабла</H1>
<P>Блаблабла-Блаблабла-Блаблабла-Блаблабла-Блаблабла-
<BR>
БлаблаблаБлаблаблаБлаблаблаБлаблабла
</P1>
</BODY>
</HTML


Это сообщение отредактировал(а) comtat - 2.8.2006, 19:16


--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
Throne
Дата 2.8.2006, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 10.5.2006

Репутация: нет
Всего: 2



Уря!  smile 
Тоесть нужно вставить
Код

print MAIL "Content-Type: text/html\n";
print MAIL "charset: koi8-r\n";
???
--------------------------------------------------------------
Ну вот, тока я обрадовался што наконецто послалось усе в нормальном виде, как сразу обломался, почему-то не получаецца сменить кодировку письма.

Это сообщение отредактировал(а) Throne - 2.8.2006, 19:40
--------------------
Компьютер — это наредкость тупая вещь, но считает с феноменальной скоростью. 
PM MAIL   Вверх
Throne
Дата 2.8.2006, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 10.5.2006

Репутация: нет
Всего: 2



Да будет восславлен и воспет великий Admin, написавший статью в FAQ, и да светится имя Alex, выложевшего её туда! smile 
Всем прежде чем вопрос задавать читать ФАКЮ!   smile 
Всё было проще репки:
Код

#!/usr/bin/perl
print "Content-Type: text/html\n\n";

open MAIL, "|/usr/sbin/sendmail -oi -t";
print MAIL "From: eny\@forever.kz\n";
print MAIL "To: ilya_makeev\@mail.ru\n";
print MAIL "Subject: simple test\n";
print MAIL "Content-Type: text/html; charset=Windows-1251\n\n";
print MAIL <<MailTextHtml
<html>

<head>
<meta http-equiv="Content-Language" content="ru">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Письмо мать твою</title>
</head>

<body>

<table border="2" style="border-collapse: collapse" width="760" bordercolorlight="#C0C0C0" bordercolordark="#808080" bgcolor="#F0F0F0" id="table1">
    <tr>
        <td><font size="2" color="#000080" face="Verdana"><strong>Вот такая
        [censored 12] табличка</strong></font></td>
    </tr>
</table>
<table border="2" style="border-collapse: collapse" width="760" bordercolorlight="#C0C0C0" bordercolordark="#808080" bgcolor="#F0F0F0" id="table2">
    <tr>
        <td><font size="2" color="#000080" face="Verdana"><strong>УРА РАБОТАЕТ
        МАТЬ ВАШУ!!!!</strong></font></td>
    </tr>
</table>

</body>

</html>
MailTextHtml
;
close MAIL;
print "Письмо отослано\n";


Это сообщение отредактировал(а) Throne - 2.8.2006, 20:16
--------------------
Компьютер — это наредкость тупая вещь, но считает с феноменальной скоростью. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0729 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.