За последние 24 часа нас посетили 25075 программистов и 1740 роботов. Сейчас ищут 944 программиста ...

PHPMailer+Bat!-клиент == кракозябры

Тема в разделе "PHP для новичков", создана пользователем iNEEdhLw, 17 окт 2015.

  1. iNEEdhLw

    iNEEdhLw Новичок

    С нами с:
    22 окт 2014
    Сообщения:
    414
    Симпатии:
    0
    стоит задача генерировать письмо в зависимости от бла-бла...
    присылаю письмо на указанные ящики, всё доходит - всё красиво, но мой заказчик пользуется почтовым клиентом Bat!, который у него отображает такое вместо кириллицы:
    [​IMG]
    но на почты gmail и mail всё приходит верно. решил я поставить себе демонстрационную версию этого дерьма (извиняюсь, если кого обидел) - полная платная - и прямо "из коробки" у меня отображает всё опять таки верно.

    заказчик же говорит, что и в мобильной версии этой штуки "из коробки" всё отображает криво, что проверить на данный момент я уже не в силе.
    хочу подытожить: заказчик чего-то наделал в своем почтовике или я действительно чего-то не вижу?
    уверен на 99.9% в проблеме руках заказчика.
    собственно, заголовки письма:
    [​IMG]

    Добавлено спустя 1 минуту 5 секунд:
    методом научного гугления получил инфу, что подобные кракозябры можно получить при декодировании UTF-8 сразу в Windows-1252.
    гугление же по самому кракотексту ничего не дает, - кто бы сомневался? =)
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    а где тело письма (свойство письма) или исходник письма BAT? с какими настройками отправлял письмо? делал определение кодировки которое в качестве текста используешь в аргументах для phpmailer?
     
  3. iNEEdhLw

    iNEEdhLw Новичок

    С нами с:
    22 окт 2014
    Сообщения:
    414
    Симпатии:
    0
    оно? [​IMG]
    вот код, который занимается отправкой этих сообщений, проще некуда:
    Код (PHP):
    1.     $email = new PHPMailer();
    2.     $email->CharSet = "UTF-8"; // устанавливаем кодировку письма
    3.     $email->IsHTML(true); // указываем режим работы с html
    4.     $email->Subject   = $subject; // тема письма 
    5.     $email->setFrom('*****', '**********'); // графа "от кого"
    6.     $email->AddAddress('away4people@gmail.com'); // кому отсылаем
    7.     $email->Body = $message; //сам текст письма (ака "привет, как дела?")
    8.     $email->Send(); // отправляем   
    Добавлено спустя 1 минуту 10 секунд:
    на всякий случай проверял и вот так:
    Код (PHP):
    1. echo mb_detect_encoding($message)  //UTF-8 
    т.е. с текстом всё хорошо
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Не вижу русских букв в свойстве письма на изображении, сохрани письмо из bat и посмотри на русские буквы в hex
     
  5. iNEEdhLw

    iNEEdhLw Новичок

    С нами с:
    22 окт 2014
    Сообщения:
    414
    Симпатии:
    0
    a, ты об этом)
    они дальше идут:
    [​IMG]
    опана :о
    а как так-то?

    Добавлено спустя 4 минуты 5 секунд:
    если смотреть просто (не исходное сообщение), то отображается верно:
    [​IMG]

    Добавлено спустя 12 минут 37 секунд:
    если убрать ishtml(true), то русский текст выводит таки, но разметка сообщения теряется.