The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Net::SMTP кодировка"
Вариант для распечатки  
Пред. тема | След. тема 
Форум WEB технологии (Perl)
Изначальное сообщение [ Отслеживать ]

"Net::SMTP кодировка"  +/
Сообщение от anonim on 02-Июн-11, 12:10 
Здравствуйте, господа !

#!/usr/local/bin/perl -w
use Net::SMTP;    
$smtp = Net::SMTP->new('XXXX:25');
$smtp->mail('XXXX@XXXX');
$smtp->to('XXXX@XXXX');
$smtp->data();
$smtp->datasend('To:XXXX@XXXX');
$smtp->datasend("\n");
$smtp->datasend("Content-Type: text/plain; charset=\"windows-1251\"\n\n");
$smtp->datasend("ПРИВЕТ");
$smtp->dataend();
$smtp->quit;


Microsoft ESMTP MAIL Service, Version: 6.0.3790.4675
Используется Exchange2003, Письмо приходит, но с Русскими буквами проблема?

Заранее благодарен.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Net::SMTP кодировка"  +/
Сообщение от Сергей (??) on 02-Июн-11, 12:39 
> Здравствуйте, господа !
>  $smtp->datasend("Content-Type: text/plain; charset=\"windows-1251\"\n\n");

  Попробуйте Content-Type=text/html либо Content-Type=text/plain и вообще посмотрите исходный текст полученного письма и все там увидите...

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Net::SMTP кодировка"  +/
Сообщение от anonim on 02-Июн-11, 13:03 
>   Попробуйте Content-Type=text/html либо Content-Type=text/plain и вообще посмотрите
> исходный текст полученного письма и все там увидите...

В параметрах сообщения пишется

Microsoft Mail Internet Headers Version 2.0
Received: from localhost.localdomain ([XX.XX.XX.XX]) by XXXX with Microsoft SMTPSVC(6.0.3790.4675);
     Wed, 1 Jun 2011 16:38:26 +0400
To: XXXX
Content-Type: text/plain; charset="windows-1251"
From: XXXX
Return-Path: XXXX
Message-ID: <XXXN01zmRf6Ci6n00000168@XXXX>
X-OriginalArrivalTime: 01 Jun 2011 12:38:26.0611 (UTC) FILETIME=[CDA2C830:01CC2058]
Date: 1 Jun 2011 16:38:26 +0400


на экране выглядит (слово ПРИВЕТ)

ÏÐÈÂÅÒ

c text/html то же самое.
Какие-то особенности Exchange ?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Net::SMTP кодировка"  +/
Сообщение от Andrey Mitrofanov on 02-Июн-11, 13:12 
> на экране выглядит (слово ПРИВЕТ)
> ÏÐÈÂÅÒ

$ echo 'ÏÐÈÂÅÒ'|recode -f u8..1251,u8..l1,1251..
ПРИВЕТ
$ _

> c text/html то же самое.
> Какие-то особенности Exchange ?

Конечно! Кривой он.

Взял входящий 1251 текст перекодировал его из latin-1 в UTF-8, потом результат _ещё_ раз перекодировал из 1251 в UTF-8.

Нормальная работа нормального почтового сервера, да.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Net::SMTP кодировка"  +/
Сообщение от Andrey Mitrofanov on 02-Июн-11, 13:15 
> Взял входящий 1251 текст перекодировал его из latin-1 в UTF-8, потом результат
> _ещё_ раз перекодировал из 1251 в UTF-8.
> Нормальная работа нормального почтового сервера, да.

Но, конечно и ---

>>>#!/usr/local/bin/perl -w
>>>use Net::SMTP;    

-- может участвовать в бардаке.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Net::SMTP кодировка"  +/
Сообщение от Сергей (??) on 02-Июн-11, 13:32 
>>   Попробуйте Content-Type=text/html либо Content-Type=text/plain и вообще посмотрите
>> исходный текст полученного письма и все там увидите...

Письма то у вас наверное приходят в нормальном виде, поэтому посмотрите исходный текст письма, который вы нормально видите, наверное не хватает какого-то заголовка для работы вашего почтовика или клиента, вот возьмите его и добавьте, ведь по datasend просто посылается строка...


Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

6. "Net::SMTP кодировка"  +/
Сообщение от Сергей (??) on 02-Июн-11, 13:36 
>>   Попробуйте Content-Type=text/html либо Content-Type=text/plain и вообще посмотрите
>> исходный текст полученного письма и все там увидите...
> В параметрах сообщения пишется
> Microsoft Mail Internet Headers Version 2.0
> Received: from localhost.localdomain ([XX.XX.XX.XX]) by XXXX with Microsoft SMTPSVC(6.0.3790.4675);
> c text/html то же самое.
> Какие-то особенности Exchange ?

Да и вот еще я вообще то формирую письмо через модуль MIME:Parser, там можно указать и кодировку и кому и вложить файл и т.д.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

7. "Net::SMTP кодировка"  +/
Сообщение от anonim on 02-Июн-11, 14:04 
>  Да и вот еще я вообще то формирую письмо через модуль
> MIME:Parser, там можно указать и кодировку и кому и вложить файл
> и т.д.

Хм, посмотр. MIME, а у Вас есть положительный опыт работы с Exchange?

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Net::SMTP кодировка"  +/
Сообщение от cryo (ok) on 02-Июн-11, 14:28 
покажите вывод

set | grep LANG

в той коносоли, где копировали кусок программы.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру