|
|
|
| Не видит русские символы на mail.ru, как переделать в utf-8 формат?
<?php
if(substr(PHP_OS, 0, 3) == "WIN")
$n = "\r\n";
else
$n = "\n";
$to = "$mail";
$from = 'мой_ящик@asd.ru';
$subject = 'Добро пожаловать на';
$subject = '=?windows-1251?b?'. base64_encode($subject) .'?=';
$headers = 'Content-type: text/plain; charset=windows-1251\r\n'. $n;
$headers .= 'From: <'. $from .'>'. $n;
$headers .= 'MIME-Version: 1.0'. $n;
$headers .= 'Date: '. date('D, d M Y h:i:s O') . $n;
$message = 'Вы успешно зарегистрировались на ';
$mail_result = mail($to, $subject, $message, $headers, '-f'. $from );
|
| |
|
|
|
|
|
|
|
для: Ванек2010
(12.12.2010 в 20:42)
| | для начала, убрать \r\n из строки типа содержимого - оно там вылезает четырьмя символами.
Далее, стоит таки добавить подходящий Content-Transfer-Encoding
Что до utf-8 или windows-1251 - это не столь важно.
Важно, чтобы кодировка текста (в данном случае - файла с исходным кодом скрипта) соответствовала заявленной в атрибутах полей заголовка. | |
|
|
|
|
|
|
|
для: Trianon
(12.12.2010 в 21:04)
| | Не могли бы помочь с готовым решением под utf-8? | |
|
|
|
|
|
|
|
для: Ванек2010
(13.12.2010 в 20:53)
| | помочь? так я и помогаю.
с готовым? цена вопроса? | |
|
|
|
|
|
|
|
для: Trianon
(13.12.2010 в 21:02)
| | Все сделал =) | |
|
|
|
|
|
|
|
для: Ванек2010
(13.12.2010 в 21:42)
| | показывайте, что получилось :) | |
|
|
|
|
|
|
|
для: Trianon
(13.12.2010 в 21:58)
| | Цена показа?:)
<?php
if(substr(PHP_OS, 0, 3) == "WIN")
$n = "\r\n";
else
$n = "\n";
$to = "asd@mail.ru";
$from = "tratata@mail.ru";
$subject = 'Тема';
$subject = '=?windows-1251?b?'. base64_encode($subject) .'?=';
$headers = 'Content-type: text/plain; charset=utf-8'. $n;
$headers .= 'From: <'. $from .'>'. $n;
$headers .= 'MIME-Version: 1.0'. $n;
$headers .= 'Date: '. date('D, d M Y h:i:s O') . $n;
$message = "Тело сообщения";
$code = "UTF-8"; // Необходимая кодировка
$curcode = "Windows-1251"; // Текущая кодировка
$message = mb_convert_encoding($message, $code, $curcode);
$mail = mail($to, $subject, $message, $headers, '-f'. $from);
|
| |
|
|
|
|
|
|
|
для: Ванек2010
(14.12.2010 в 00:09)
| | ну что я могу сказать.
Не ужос ужос, конечно. Кое в чем Вы разобрались.
Просто ужос.
1.тело (не текст, а его двоичное представление) сообщения как было незакодировано, так и осталось.
2. поля заголовка и тело сообщения представлены разными кодовыми страницами (зачем бы так) ?
3-е и самое непонятное.
Если у Вас сайт в кодировке windows-1251 - зачем Вам понадобилось отправлять письмо в utf-8?
Или скорее наоборот, если письмо вы формируете в utf-8 (что, безусловно, стратегически более правильно) то почему весь остальной код держите в 1251?
Вот такая вот цена. | |
|
|
|
|
|
|
|
для: Trianon
(14.12.2010 в 00:24)
| | Mail ру, тему воспринимает только в windows 1251, а само сообщение в utf8
Поэтому тело utf8 а тема win1251.
Это самый простой и понятный мне вариант, который нашел, главное что работает =) | |
|
|
|
|
 35.6 Кб |
|
|
для: Ванек2010
(14.12.2010 в 00:30)
| | >Mail ру, тему воспринимает только в windows 1251, а само сообщение в utf8
Извините, Вы сейчас просто чушь пишете, или пытаетесь mail.ru Group оболгать?
Смотрите аттач. | |
|
|
|
|
|
|
|
для: Trianon
(13.12.2010 в 21:02)
| | > цена вопроса?
А какова ваша часовая ставка? :) | |
|
|
|
|
|
|
|
для: neadekvat
(13.12.2010 в 22:07)
| | а что у вас за интерес? :)) | |
|
|
|
|
|
|
|
для: Trianon
(13.12.2010 в 22:11)
| | Чистый интерес :)
Чисто теоретически, вряд ли я смогу позволить себе (в данный момент) обратиться к программисту вашего уровня. | |
|
|
|