Задать вопрос
@Sanchik97

Как решить проблему с неправильной кодировкой в gmail?

Здравствуйте. Есть форма обратной связи и её обработчик:

<meta http-equiv='refresh' content='5; url=Сайт'>
<meta charset="UTF-8" />
<?php
   $back = "<p><a href=\"javascript: history.back()\">Вернуться назад</a></p>";
 
   if(!empty($_POST['name']) and !empty($_POST['title']) and !empty($_POST['email']) 
   and !empty($_POST['message'])){
      $name = trim(strip_tags($_POST['name']));
      $title = trim(strip_tags($_POST['title']));
      $mail = trim(strip_tags($_POST['email']));
      $message = trim(strip_tags($_POST['message']));
 
      mail('моя почта@gmail.com', 'Письмо с сайта', 
      'Вам написал: '.$name.'<br />Заголовок: '.$title.'<br />Его почта: '.$mail.'<br />
      Его сообщение: '.$message,"Content-type:text/html;charset=UTF-8");
 
      echo "Ваше сообщение успешно отправлено!<Br><Br> $back";
 
      exit;
   } 
   else {
      echo "Для отправки сообщения заполните все поля! $back";
      exit;
   }
?>

При отправке на почту вместо кириллицы отображаются кракозябры. Как можно это исправить?
  • Вопрос задан
  • 153 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
customtema
@customtema
arint.ru
Добавьте заголовок письма с указанием кодировки, rfc5335.

$headers = "Content-Type: text/html; charset=UTF-8";
$mail = $smtp->send($to, $headers, $body);


Обратите внимание, почта отправленная sendmail последние годы доставляется плохо. Отправляйте через SMTP, используя публичные сервера, например smtp.yandex.ru. Если вы используете pdd.yandex.ru, вам придется создать почтовый ящик, и хотя бы один раз войти в него, чтобы активировать.

В этом есть и большой плюс. Не нужно больше писать в письмах do not reply - вы можете принимать обратную связь от пользователей через письма, это удобно и соответствует общепринятому представлению об адекватном поведении людей.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@notwrite
согласовать кодировку редактора кода и тела письма. Добавить правильные заголовки кодировки.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы