|
|
|
| Кодировка страничка utf8 , а вот значения которые отправляются через форму пост в кирилице должны быть в win-1251.
Как сделать это для POST? | |
|
|
|
|
|
|
|
для: TrEK
(22.02.2011 в 19:56)
| | А какова конечная цель? Работать с обработчиком формы, который расположен на другом сервере? Т.е. нельзя ли перекодировку осуществить уже в обработчике, введя дополнительный параметр с кодировкой - если этот параметр присутствует - перекодируем, если его нет, значит данные поступают в win-1251? | |
|
|
|
|
|
|
|
для: TrEK
(22.02.2011 в 19:56)
| | Если кодировка странички - utf-8, то браузеру - при POST-отправке полей формы с этой странички - ничего не останется как передать их именно в кодировке utf-8 . И в никакой другой.
Так что написанное Вами - сплошное противоречие. | |
|
|
|
|
|
|
|
для: Trianon
(22.02.2011 в 20:22)
| | В общем, суть такова:
в браузере - <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
дальше идет форма ввода, которая отправляет запрос на имейл.. + отправляет то, что ввожу...
Здесь привел тот скрипт
И мне на почту приходят крокозябры. Какой выход... менять кодировку странички на вин-1251 ? | |
|
|
|
|
|
|
|
для: TrEK
(23.02.2011 в 02:09)
| | почему скрипт на utf-8 не поменять?
И кодировку сообветствующую в Content-Type не прописать?
Письма тоже можно в utf-8 отправлять. | |
|
|
|
|
|
|
|
для: Trianon
(23.02.2011 в 02:16)
| | Вот здесь не понял.
Просто мне надо чтоб скрипт отправлял данные в вин-1251.
А кодировка пшп-странички (контент тайп) и так задана ютф-8 | |
|
|
|
|
|
|
|
для: TrEK
(23.02.2011 в 11:42)
| | Чтобы какой скрипт, и куда отправлял?
Вы никакого скрипта в начальном посте не привели.
Сказали, что нужно, чтобы данные отправлялись через форму.
Из формы данные отправляет браузер - на сервер, скрипту. А не скрипт еще куда-то. | |
|
|
|
|
|
|
|
для: TrEK
(23.02.2011 в 11:42)
| | Далее. Если речь все же идет не об отправке браузером данных полей из формы скрипту, а об отправке скриптом е-маил-сообщения на почту.
Почему требуется письмо именно в кодировке windows-1251?
Чем не устраивает та, в которой получены данные?
Почтовые клиенты вполне способны прочесть письмо в кодировке UTF-8
При чем на современном этапе это даже более вероятно, чем для кодировки windows-1251.
Преобразование из utf-8 (универсальной кодировки) в 1251 (кодировку семейства кириллических языков) в конце концов когда-нибудь рано или поздно приведет к потере информации.
Почему Вы настаиваете имено на таком подходе - непонятно. | |
|
|
|
|
|
|
|
для: Trianon
(23.02.2011 в 12:26)
| | Да , правильно.
Форма отправки с веб на почту.
Почему я не хочу отправлять с кодировкой utf8 ?
Потому что адресат получает вместо кириллицы - РџР Р?ВЕТ ЄТО РЇ !!! | |
|
|
|
|
|
|
|
для: TrEK
(23.02.2011 в 17:21)
| | это потому что в приведенном скрипте у Вас
$headers = "Content-Type: text/html; charset=windows-1251\n";
| а не utf-8
а также потому, что $subject не подвергнут MIME-кодированию.
Всё это - не повод ни разу. | |
|
|
|
|
|
|
|
для: Trianon
(23.02.2011 в 17:49)
| | Ну да, а вначале странички <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
Тоесть Вы хотите сказать, что если в этих двух местах указать charset=utf8 - тогда у меня перестанут приходить крокозябры?
Ну у меня это получалось лишь в двух случаях...
1. если везде поставить charset=windows-1251, но тогда через mc не удобно редактировать кириллицу, так как она через веб станет крокозяброй,
2. если везде поставить ютф8, и тогда я могу писать в mc кириллией, но отправленные данные приходят крокозяброй. (вернее все формата - п пёп п п )
А как подвергнуть Сабджект ентому самому кодированию? | |
|
|
|
|
|
|
|
для: TrEK
(23.02.2011 в 20:18)
| | >> $headers = "Content-Type: text/html; charset=windows-1251\n";
>Ну да, а вначале странички <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
Посмотрите внимательно, какую строку я показал.
И какую показали Вы. | |
|
|
|
|
|
|
|
для: Trianon
(23.02.2011 в 22:59)
| | У меня и то и то есть!
Я не понимаю в чем моя ошибка? | |
|
|
|
|
|
|
|
для: TrEK
(24.02.2011 в 00:39)
| | Браузеру важнее не то, что указано в meta-теге, а то, что в заголовке от сервера пришло. | |
|
|
|
|
|
|
|
для: neadekvat
(24.02.2011 в 00:42)
| | браузер тут малость не при делах.
кодировку воспринимает почтовый клиент. | |
|
|
|
|
|
|
|
для: TrEK
(24.02.2011 в 00:39)
| | в том что сообщение Вы отправляете в однолй кодировке, а в заголовке сообщения указываете совсем другую. | |
|
|
|
|
|
|
|
для: Trianon
(24.02.2011 в 01:15)
| | Если в заголовке ютф8 и отправляю ютф8 - я получаю вместо кириллицы буквы ПППП.
Но проблема впринципе решена конвертацией кодировок. (deimand ) | |
|
|
|
|
|
|
|
для: TrEK
(22.02.2011 в 19:56)
| |
<?php
function a($x) { if (is_array($x)) return array_map('a', $x); else return iconv("utf-8", "windows-1251", $x); }
$_POST = a($_POST);
|
| |
|
|
|
|
|
|
|
для: deimand
(22.02.2011 в 20:58)
| | а какже вложенные структуры и проверка типов? | |
|
|
|
|
|
|
|
для: deimand
(22.02.2011 в 20:58)
| | Спасибо, заработало так как и хотел!! | |
|
|
|