![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
begin |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 415 Регистрация: 16.5.2007 Репутация: нет Всего: нет |
Письмо в Outluk открывается в таком вот виде:
скриншот Поля от, кому и тема видны в нормальном виде. Проблема лишь с текстом письма. Скрипт, отсылающий письмо, выглядит так:
|
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
ну правильно. кодировка в письме не указана.
|
|||
|
||||
begin |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 415 Регистрация: 16.5.2007 Репутация: нет Всего: нет |
Как же, а вот строка:
|
||||
|
|||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
у меня тоже в кармане тыща рублей есть. только я их все равно должен.
попробуйте на 6 строчке вместо mail($adress, $subj, $text, $header); написать echo $header; что выведет? |
|||
|
||||
brother79 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 18.8.2009 Репутация: 2 Всего: 6 |
А лучше используй iconv и переводи всё в utf. Ты конечно можешь заставить оутлук понимать твоё письмо, но будут другие, которые не знают cp1251, например под юниксом. Я раньше делал посылку письма тоже через 1251, и всё нормально работало в винде, но были клиенты, которым надо именно utf, хоть и везде прописанно, что это 1251
|
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Не надо писать о том, чего не знаете
"под юниксом" 1251 читается прекрасно все проблемы с клиентами не от кодировки, а оттого, что письмо криво составлено. |
|||
|
||||
brother79 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 18.8.2009 Репутация: 2 Всего: 6 |
Спорить не буду, смысла нету. Вот email [email protected] Если на этот ящик придёт письмо в cp1251 и оно нормально покажется на моём телефоне - соглашусь, а пока, увы, останусь при своём мнении. |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Ах, уже не "юникс", а "телефон".
Ну да, давайте откопаем на помойке аппарат десятилетней давности, и начнем слать на него письма. Вы пришли в тему, в которой не поняли ничего. И дали совет, который никак не поможет автору топика. У которого проблема даже не в кодировке, а в синтаксисе PHP. |
|||
|
||||
brother79 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 18.8.2009 Репутация: 2 Всего: 6 |
Читаем внимательнее. Я вижу, вы дали ответ, в связи с чем не вижу смысла повторяться про синтаксис
Samsung SGH-G600 Не самый новый, обычный телефон с ценой немного выше среднего, но я бы не сказал, что вы такой на помойке откопаете. зы. У меня была рассылка, я прописал кодировки, оттестил на тех клиентах, которые были в т.ч. и просто в вебе, всё работало превосходно, пока не начали появляться жалобы на нечитаемую кодировку. В моём случае проблем с синтаксисом не было. Потом я переделал всё на utf, всё работает без проблем, в т.ч. и на телефоне. Про Юникс - я помню, что упоминал, можно и на нём проверить, только в настоящий момент у меня его нету, вчера винду поставил. Также могу заметить, что ряд форумов - тоже криво присылает письма на виндовой кодировке, например http://forum.woweb.ru. Я не претендую, на то, что я всё знаю, но в моём случае использовался класс из фреймворка Symfony, который использует PHPMailer. Хедер руками я не выводил, не вижу смысла заниматься велосипедостроением. Разницу прекрасно видел как обрабатываются письма с неуказанной кодировкой и с явно указанной cp1251. |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
||||
|
||||
brother79 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 18.8.2009 Репутация: 2 Всего: 6 |
Вот кстати как там реализованно то место, которое кодировку в письмо пишет. Если у вас других идей нету, как ещё в письмо кодировку можно указать - то свами тоже всё ясно. |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Со мной давно все ясно. Я ни на что не претендую.
Я только удивляюсь, как вообще почта до сих пор ходит, если большинство виндовых клиентов пишут либо в 1251, либо вообще в кои. Видимо, у получателей массовые галлюцинации, и им только кажется, что они правильно поняли текст. А код $result .= sprintf - это, конечно, образец. С которого надо брать пример. И к чему нам RFC на полсотни килобайт? Написал две строчки на пхп - и порядок. |
|||
|
||||
begin |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 415 Регистрация: 16.5.2007 Репутация: нет Всего: нет |
Спасибо, я и правда умудрился пропустить ошибку:
Во второй строке не поставил точку, и из-за этого переменная переназначалась, а не добавлялась. Вобщем уже все работает, всем спасибо ![]() |
||||
|
|||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
begin, честно говоря, даже и в этом виде письмо мало будет похоже на читаемое.
Только ооочень дружелюбный клиент сможет его показать. Вот здесь я приводил минимальный код, который отправляет письма корректно. Там, правда, нет поля From, но это все равно ненужно баловство. brother79, я не очень понял суть вашей проблемы, но предполагаю, что проблема в том, что письмо состоит из нескольких частей. И вот для этих частей кодировка не была указана или указана неправильно. Я не спорю, вполне может быть такой клиент, который не понимает какую-то особенную кодировку, японский SHIFT-JIS, например. Но. Реальность такова, что если русскоязычный пользователь пользуется программой, которая не понимает ничего, кроме утф, то он не сможет прочесть большую часть писем. Следовательно, проблема, скорее всего, была в несоблюдении стандартов при составлении письма. |
|||
|
||||
begin |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 415 Регистрация: 16.5.2007 Репутация: нет Всего: нет |
Да, согласен. Мой нынешний код расчитан на конкретного клиента с конкретным почтовым клиентом. Письма у него теперь нормально читаются в Outlook, а у меня - в TheBat. Конечно, когда буду делать скрипт рассылки для сайтов - то буду применять ваше "расширенное" решение данной проблемы. Там уже без этого будет не обойтись ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |