Forum Webscript.Ru

Программирование => PHP => Тема начата: lina от 16 Мая 2002, 20:40:02

Название: язык и ф-я mail()
Отправлено: lina от 16 Мая 2002, 20:40:02
Народ, кто знает, можно ли каким-то образом избежать появления буквы "Ё" вместо "i" украинского в тексте $message письма, отправленного с помощью функции mail($to, $subject, $message,$headers)? И возможно ли, чтобы нормально отображалась тема письма $subject, содержащая русские буквы, а то одни кракозябры :(
Название: :)
Отправлено: Oak от 16 Мая 2002, 21:18:51
Знает ... только вопрос поставлен совершенно не корректно.
mail не имеет никакого отношения к содержимому - т.е она
не меняет те строки, которые ты ей даешь.
 Отсюда вывод
1) либо ты ей скармливаешь неправильные данные (а откуда ты их берешь?)
2) либо твою почтовую программу можно выбрасывать.
 (если это Netscape4 , то я тебе дам програмку, которая делает
  его умеющим понимать Koi8-u - это стандарт для писем в Internet.
 (в отличии от Www это реально стандарт).
Название: язык и ф-я mail()
Отправлено: lina от 16 Мая 2002, 21:52:06
данные я ей скармливаю самые обычные - строковые, ввожу с клавиатуры в теле скрипта :)
а результат смотрю обычным веб-интерфейсом на Яндексе...
причем результат при
$headers= "Content-type: text/html; charset=windows-1251\\r\\n";
еще более-менее, то есть видно все, кроме "i", а вот когда
$headers= "Content-type: text/html; charset=Koi8-u\\r\\n";
то ни при одной кодировке ничего удобоваримого не видать :(
Название: язык и ф-я mail()
Отправлено: Oak от 16 Мая 2002, 23:24:44
Пошли мне письмо с═украинскими.... Кстати Yandex не поддерживает украинского - он и может портить буквы
Название: язык и ф-я mail()
Отправлено: Dm от 17 Мая 2002, 03:00:44
Цитировать
видно все, кроме "i",

str_replace на что-нибудь? ;)
Название: язык и ф-я mail()
Отправлено: lina от 19 Мая 2002, 17:26:10
2 Dm:
дык, выкрутиться можно всегда, и даже не одним способом... интересно просто, че эт за ерунда такая и как с ней бороться :)
кстати, вот с темой письма бороться вообще не получается... все, кроме аглицкого, нечитабельное. может, у тебя есть вариант?

2 Oak: спасибо! попробую в понедельник, если ты не против. найдемся по аське или мылом :)
Название: язык и ф-я mail()
Отправлено: Макс от 19 Мая 2002, 18:59:23
Цитировать
кстати, вот с темой письма бороться вообще не получается... все, кроме аглицкого, нечитабельное. может, у тебя есть вариант?
Насколько я знаю, в заголовке письма нельзя использовать неанглоязычные символы.
Его нужно кодировать (например с помощью base64_encode) и выглядеть он должен примерно так (не проверял):

$subj="=?koi8-r?B?".base64_encode("текст заголовка")."=?=";

Буква "B" между знаками вопроса означает что используется base64
Название: язык и ф-я mail()
Отправлено: Dm от 20 Мая 2002, 01:01:36
имхо, на http://www.phpclasses.org есть готовые классы для этого.