|
|
|
Опять про кодировку при работе с mail() (много и подробно)
|
|||
|---|---|---|---|
|
#18+
Более года у меня отлично работала конструкция, где данные из формы передавались в mail() в кодировке win-1251 и благополучно отсылались. Тема формировалась строкой, типа $subject = "ФОРМА"; В теле письма я спокойно писал строки, типа $message .= "Телефон: "; Чтобы mail-клиент потом автоматически корректно читал кодировку, в заголовок я писал $headers .= "Content-Type: text/plain; charset=\"Windows-1251\"\n"; Вчера инженеры на моем американческом хостинге что-то намудрили и все резко перестало работать. Теперь, когда я пытаюсь поставить в тему что-то на кирилице, то при отсылке это автоматически переводится в UTF-8 и становится напрочь нечитабельным. Более того, если тело письма содержит символы из кирилицы, то в заголовок автоматически добавляется 3 строки: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: BASE64 Естественно, и все содержимое письма тоже переколбашивается в нечитабельный вид. При попытке что-то менять в заголовке, эти 3 строки добавляются в любом случае, что приводит к еще бОльшей путанице. Получается, что в заголовке одновременно присутствуют и Content-Type: text/plain; charset=UTF-8 и Content-Type: text/plain; charset="Windows-1251". Теперь, когда я подробно описал ситуацию, главный вопрос: Каким образом можно отключить все эти новшества и заставить PHP отправлять почту в нужной мен кодировке? Откуда он вобще берет информацию о том в какой кодировке и что должно быть? Если это поможет, то сообщаю, что PHP стоит 4.3.9 и Apache version 1.3.33 (Unix). Хостинг американческий виртуальный. Заранее благодарен тем, кто попытается мне помочь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 13:34 |
|
||
|
Опять про кодировку при работе с mail() (много и подробно)
|
|||
|---|---|---|---|
|
#18+
http://www.php.net/manual/en/function.mail.php надо еще и заголовок письма кодировать. Там есть пример тому. а в кратце, заголовок должен иметь следующий вид: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 14:20 |
|
||
|
Опять про кодировку при работе с mail() (много и подробно)
|
|||
|---|---|---|---|
|
#18+
VERS http://www.php.net/manual/en/function.mail.php надо еще и заголовок письма кодировать. Там есть пример тому. а в кратце, заголовок должен иметь следующий вид: Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 14:28 |
|
||
|
Опять про кодировку при работе с mail() (много и подробно)
|
|||
|---|---|---|---|
|
#18+
VERS http://www.php.net/manual/en/function.mail.php надо еще и заголовок письма кодировать. Там есть пример тому. а в кратце, заголовок должен иметь следующий вид: Код: plaintext Спасибо. Эта штука коряво, но работает. А вот как быть с телом письма? Глобальная проблема по-прежнему не решена. Темы на английском я вполне переживу, это служебная информация, а вот юзеры всякое в фомы пишут по-русски. Вот тут основные сложности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2004, 15:26 |
|
||
|
Опять про кодировку при работе с mail() (много и подробно)
|
|||
|---|---|---|---|
|
#18+
Проблему я решил использованием mb_send_mail вместо mail. Однако, тут прорисовалась другая беда. Символы кирилицы не передаются в скрипт из формы. Латиница идет, а вот кирилические символы просто изымаются из строк бесследно. Если отправляется строка rrrяяяrrr, то в скрипт из $_POST["name"] приходит строка rrrrrr, т.е. кусок яяя просто пропадает бесследно. Мне тут присоветовали добавить enctype="multipart/form-data" к заголовку формы, но это не помогло. Может кто знает, в чем тут проблема? Главное, что ранее все работало. Это хостер обновил PHP и начались все эти "приключения". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2004, 14:12 |
|
||
|
Опять про кодировку при работе с mail() (много и подробно)
|
|||
|---|---|---|---|
|
#18+
SamuelsОднако, тут прорисовалась другая беда. Символы кирилицы не передаются в скрипт из формы.Читать ман по Multibyte String , много думать о значении параметров конфигурации этого модуля (текущее состояние дел смотреть по phpinfo (INFO_MODULES), как можно устанавливать нужные значения читать в мане по ini_set )Может кто знает, в чем тут проблема?Хостер слишком "умный". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2004, 15:16 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=32839481&tid=1479032]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
148ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 416ms |

| 0 / 0 |
