IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Веб-программирование (https://www.imho.ws/forumdisplay.php?f=29)
-   -   Кодировка в заголовках email (https://www.imho.ws/showthread.php?t=122189)

GoodS 04.08.2007 15:38

Кодировка в заголовках email
 
Вобщем когда посылаю письмо через функцию mail в PHP, в параметрах указываю заголовки.
Допустим заголовок:

From: Вася пупкин <vasya@mail.ru>\r\n
Reply-To: Вася пупкин <vasya@mail.ru>\r\n
.......... и т.д................

Если после From: русское имя в кодировке windows-1251, то когда я посылаю письмо то например в оутлук экспрессе оно воспринимается как кои8 и отображается криво..

Я взял к примеру письмо посланое с того же мейла и сохранил...
Там вместо русских букв вот такое дело:
From: =?koi8-r?Q?=EC=C1=D2=C9=D3=C1_=E4=CD=C9=D4=D2=C9=C5=D7=CE=C1_=EB=CF=D3=D4=C5= D2=C9=CE=C1?= <vasya@mail.ru>

Так вот хотелось бы задать вопрос что за кодировка и вообще какой формат этого поля.

RaZEr 04.08.2007 16:38

Туда впринципе можно и простым текстом писать. Но часто экранируют. Принцип экранирования аналогичен экранированию переменных в query_string. Разница в том, что вместо "%" используется "=", и в начале указывается кодировка.

killhunter 04.08.2007 16:58

Попробуй так
mail("From: $Email \nContent-Type: text/html; charset=windows-1251");

GoodS 05.08.2007 15:04

koi8-r?Q?

RaZEr, а что тогда значит Q?

я еще B видел

GoodS 06.08.2007 12:02

все спасибо разобрался:
$header="From: =?windows-1251?b?".base64_encode($fromname)."?= <$fromaddress>\r\n";

вот так примерно получилось.

b между знаков попросов насколько я понял обозначает base64 а q - hex вариант


Часовой пояс GMT +4, время: 05:15.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.