Post-передача кириллицы со страницы в utf-8 на стр

Печать RSS
82

T
Автор
Пришелец
0
Мое почтение, уважаемые форумчане!
Подключаю Merchant WebMoney к некоему сайту и столкнулся со следующей проблемой.
Сайт верстан на XHTML 1.1 в utf-8, а merchant.webmoney.ru в windows-1251. Соответственно post-данные name="LMI_PAYMENT_DESC" кириллицей выводятся каракулями.
Подскажите, пожалуйста, как можно передать кириллицу из страницы в кодировке utf-8 на страницу в windows-1251?
Спасибо. smile

Ктулху
0
Эммм... помоему это не предусмотрено протоколом.
Но вообще не латинские данные в запросе передаются в HEX, что по идее должно исключить такие проблемы.
А что именно ты передаёшь POST'ом? может имеет смысл заменить на латиницу?
T
Автор
Пришелец
0
ShiftBHT, спасибо! smile
Я тут покопал еще и обнаружил, что сам Мерчант предлагает решение данной проблемы в виде поля LMI_PAYMENT_DESC_BASE64: "Описание товара или услуги в UTF-8 и далее закодированное алгоритмом Base64. Формируется продавцом. Если присутствует, то результат раскодирования будет подставлен вместо LMI_PAYMENT_DESC. Позволяет не зависеть от кодировки на сайте продавца".
Таким образом:
<input type="hidden" name="LMI_PAYMENT_DESC_BASE64" value="' . base64_encode("Тестовый платеж") . '" />

Ктулху
0
вполне себе вариант решения =)

Господин ПЖ
0
3. TrydORg, если там другие данные будешь передавать свои то желательно тоже кодируй их, там у них некоторые знаки не правльно передаются я уже точно не помню
В

Чатланин
0
Щас с телефона.. Через пару часов напишу ответ.. Сталкивался с этим.. Ответ находил через поисковик.
Там какое то свойство в форме просто прописывается.
И не надо ничего перекодировать.
Изменил: Валерий (17.09.2011 / 18:39)
В

Чатланин
0
Вот решение.
<form id="pay" method="post" accept-charset="cp1251" action="https://merchant.webmoney.ru/lmi/payment.asp" />
Нужно в форме прописать accept-charset="cp1251"
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск