Дополнен 11 лет назад
Начало текста удалилось:
Суть проблемы вот в чем: при отправке письма средствами функции mail() в php часть кириллических символов тела письма приходит в виде "?! ?". Непонятно почему только некоторые буквы заменяются на "?! ?".
Дополнен 11 лет назад
Народ, читайте, пожалуйста, внимательней.
Скрипт в utf-8, база в utf-8. Вывод на экран без ошибок.
При отправке на почту ЧАСТЬ символов искажена, не весь текст.
Вот пример:
Беспл! атная доставка Вашего заказа по в? ! ?ей России
Дополнен 11 лет назад
Народ, читайте, пожалуйста, внимательней.
Скрипт в utf-8, база в utf-8. Вывод на экран без ошибок.
При отправке на почту ЧАСТЬ символов искажена, не весь текст.
Вот пример:
Беспл! атная доставка Вашего заказа по в? ! ?ей России
Функция отправки почты вот такая:
function mail_utf8($to, $from, $subject, $message)
{
$subject = '=?UTF-8?B?' . base64_encode($subject) . '?=';
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "Content-Transfer-Encoding: 8bit \r\n";
$headers .= "From: $from\r\n";
return mail($to, $subject, $message, $headers);
}
Кодировка скрипта utf-8. Текст письма формируется из данных, которые берутся из БД MySQL. База также в uft-8. Эти же данные на сайте выводятся верно.
Из-за чего может быть неверный вывод некоторых символов в письме?