Jump to content
  • 0

Кодировка, заголовок письма


sviloga
 Share

Question

Здравсвуйте.

Столкнулся с такой проблемой при отправке письма.

Динамически формируется заголовок письма (Название конторы из настроек + Постоянная строка + Строка из БД)

Сайт в кодировке UTF-8, БД в той же кодировке. Осталась проблема с фиксированной строкой.

Пробовал конверитровать строку через mb_convert_encoding, не помогает в заголовке приходят вопросы.

Посоветуйте кто что может?

Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0

Фиксированная строка берётся откуда? Когда конвертите из какого формата в утф, и почему ?

Фиксированная строка берется из скрипта. Кодировка скрипта UTF-8. В последствии из нескольких частей собирается тема сообщения (Выборка из БД в UTF-8+фиксированная строка) Первая часть отображается нормально, а строка взятая из скрипта в виде вопросов

Link to comment
Share on other sites

  • 0

Фиксированная строка берется из скрипта. Кодировка скрипта UTF-8. В последствии из нескольких частей собирается тема сообщения (Выборка из БД в UTF-8+фиксированная строка) Первая часть отображается нормально, а строка взятая из скрипта в виде вопросов

Ну если это так то надо проверить чтобы сами файлы были в UTF-8 кодировке и проблем не должно возникнуть.

Для теста можно попробовать вывести тему сообщение через echo и посмотреть через браузер если кодировка будет соответствовать то значит дело не в ней...

Link to comment
Share on other sites

  • 0

Попробовал протестить как советовал stars. Результат тот же: то что из БД в UTF-8 нормально отображается, а из скрипта не катит. Пробовал скрипт в разных кодировках. Даже в кодировке win1251 такая же хрень творится. Единственно что забыл сказать что письма шлются по всему списку подписчиков ajax. Может он где переворачивает.

Link to comment
Share on other sites

  • 0

Добавьте заголовок с кодировкой. Все должно заработать верно.

mail('admin@localhost', 'Subject', 'Body', "Content-type: text/plain; charset=utf-8\r\n");

или text/html, если письмо содержит html-разметку.

Edited by 7ion
Link to comment
Share on other sites

  • 0

Кодировка и тип передаются, но результат не меняется. Вот кусок кода


$mesasge = mb_convert_encoding($mesage, 'UTF-8', 'UTF-8');
$options = array(
'contentType' => 'text/html',
'encoding' => 'UTF-8',
);
$from = $INI['mail']['from'];
$to = $subscribe['email'];
$subject = $INI['system']['sitename'] . " Предложение дня: {$team['title']}";
if ($INI['mail']['mail']=='mail') {
Mailer::SendMail($from, $to, $subject, $message, $options);
} else {
Mailer::SmtpMail($from, $to, $subject, $message, $options);
}

Link to comment
Share on other sites

  • 0

1. $mesasge не равно $mesage

2. $mesage, 'UTF-8', 'UTF-8' Из утф в утф не конвертят, из стакана в стакан не переливают. ноль на массу результата не даёт. Надо указывать кодировку в которой есть и в которую должно превратиться

3. Mailer::SendMail($from, $to, $subject, $message, $options); -> $message (см.п1) не равно $mesasge не равно $mesage

Link to comment
Share on other sites

  • 0

1. $mesasge не равно $mesage

2. $mesage, 'UTF-8', 'UTF-8' Из утф в утф не конвертят, из стакана в стакан не переливают. ноль на массу результата не даёт. Надо указывать кодировку в которой есть и в которую должно превратиться

3. Mailer::SendMail($from, $to, $subject, $message, $options); -> $message (см.п1) не равно $mesasge не равно $mesage

Ну это сути проблемы не меняет. Меня интересует поле $subject, а $message передается html страницы

Link to comment
Share on other sites

  • 0

тогда я не представляю как можно вопрос решить теоретически. Если хотите можете завтра мне написать в аську(есть в профиле), тогда могу отдельно потестить ваши скрипты и уже воочую убедиться где собака порылась, в противном случае гадать можно долго, если конечно кто-то из месных талантов всё же попадёт пальцем в небо.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy