Pages: (2) 1 [2] ( Show unread post )

> Уведомления с Нетлаба.
 eShiva Member is Offline
 Posted: 06-10-2004, 09:49 (post 16, #307561)

Addicted

Group: Members
Posts: 845
Warn:0%-----
QUOTE (Sergey Overkill @ 05-10-2004, 17:29)
Кажись, это кривость Outlook'а. Ибо в приходящих уведомлениях есть такой хэдер: Content-Type: text/plain; charset='windows-1251'. Т.е. нормальный клиент должен бы догадаться, в какой кодировке следует отображать текст...

FYI, Outlook 2002 нормально показывает эти самые мессаги и эти самые письма.
PM Email Poster
Top Bottom
 Сергей Иванович Member is Offline
 Posted: 06-10-2004, 12:50 (post 17, #307598)

Паэд-биздельнег

Group: Prestige
Posts: 5196
Warn:0%-----
eShiva
Прошу меня простить великодушно, но я хотел написать Outlook Express... biggrin.gif
PM
Top Bottom
 Brait Member is Offline
 Posted: 07-10-2004, 03:49 (post 18, #307904)

Ответственный за БД
Group: Roots
Group: Roots
Posts: 3779
Так, отвечаю.
QUOTE
я с разных форумов такие уведомления получаю (с нетлаба - нет, ибо все равно всегда тут). И везде хоть что-то, но криво. Интересно почему так.

Потому-что почтовая система в Invision Board написано плохо, с ошибками и несоответствиями RFC.  
QUOTE (Bazzik @ 06-10-2004, 09:14)
@astra
Во-во, я как раз и об этом ...  
CODE
Content-Type: text/plain; charset=windows-1251
и текст сообщения как есть.  
Заголовок (Subject) тоже закодировать (смотри пред. пост), хотя если проделать вишеизложенное, то это должно быть уже лишним...

Charset у содержимого письма указывается исключительно для почтового клиента, что-бы читателю не приходилось самому кодировку выставлять. Для почтовых серверов она смысла не имеет. Поэтому приходится 8-битовые сообщения кодировать в 7-битовый вид, что-бы старые почтовые сервера их не портили. Наследие времен, блин...

Теперь разъясняю.

Поскольку письма иногда бывают с русским буквами, они все кодируются в стандарте 'base64'. Именно поэтому в заголовке письма присутствует строка "Content-Transfer-Encoding: base64". Если почтовый клиет не понимает 'base64 encoding' - это плохо, надо разбираться, где и чего у него не так...

Заголовок письма тоже ДОЛЖЕН БЫЛ приводиться к кодированному виду, я в исходниках это исправлял. Но было одно НО - я считал, что PHP-шная функция 'mail()' сама все правильно делает, согласно стандартам. Ага, счазззз!

Вобщем найдены и пофиксены ошибки
- повторяющиеся заголовки "To:" и "Subject:" - fixed.
- отсутствие кодирования в заголовке "Subject:" - fixed.
Если что-то еще не так - пишите.
PM
Top Bottom
 Bazzik Member is Offline
   Posted: 07-10-2004, 17:05 (post 19, #308082)

Member

Group: Members
Posts: 182
Warn:0%-----
QUOTE
Поскольку письма иногда бывают с русским буквами, они все кодируются в стандарте 'base64'. Именно поэтому в заголовке письма присутствует строка "Content-Transfer-Encoding: base64". Если почтовый клиет не понимает 'base64 encoding' - это плохо, надо разбираться, где и чего у него не так...

Ну это "фирменная" проблема Thunderbird (по крайней мере версий 0.7-0.8). Может в будущем и исправят wink.gif ...

А как много этих старых серверов все еще есть ?? Ко мне вот такие письма приходят отовсюду (включая Австралию, Аргентину, Корею, Богом забытого села в Украине (и там есть инет) ) вполне нормально:
CODE
Content-Type: text/plain; charset="windows-1251"
Content-Transfer-Encoding: 8bit


А может все в UTF-8 перевести newest/w00t.gif
PM Email Poster
Top Bottom
 Brait Member is Offline
 Posted: 08-10-2004, 04:04 (post 20, #308272)

Ответственный за БД
Group: Roots
Group: Roots
Posts: 3779
Ты имеешь ввиду RFC-1642 (UTF-7)?

Ну уж нееет. Функции кодирования нет, опыта по этому формату сообщений - нет, уверенности в понимании этого RFC всеми mail-reader'ами - нет, еще и сообщения переводить из Windows-1251 в UTF-8?!

Кому добровольно нужен такой геморой? Вполне ведь хватает MIME base64. Ах, Thunderbird'у нужен? Нуууу, думаю ты сам уже знаешь мой ответ...
biggrin.gif
PM
Top Bottom
Topic Options Pages: (2) 1 [2]