о WebMoney
Информационный портал о WebMoney
  
  
подписка  
реклама здесь 
обратная связь 
  Материалы      Вопросы и ответы     Курс обучения      Файлы
 Кофейня      WebMoney TOP      p2p      WM-Клуб      Гид   
о WebMoney / Вопросы и ответы / Как заставить WM Merchant понимать русский текст в UTF8?

Как заставить WM Merchant понимать русский текст в UTF8?

© Потап Вертолётов, 18.09.2009

моя оценка:
[средняя: 3.5]

У многих разработчиков, которые подключали WM Merchant к своим сайтам, возникало затруднение: WM Merchant никак не хотел воспринимать Примечание платежа в кодировке UTF8.


У многих разработчиков, которые подключали WM Merchant к своим сайтам, возникало затруднение: параметр LMI_PAYMENT_DESC (в нём передаётся Примечание платежа) можно было передать только в кодировке Win1251 или только английскими буквами. UTF8 WM Merchant воспринимать не хотел ни в какую.

Проблема эта усугублялась еще и тем, что перекодирование LMI_PAYMENT_DESC на стороне продавца из UTF8 в Win1251 ни к какому результату не приводила. Иными словами, когда страница продавца представлена в Юникоде, и в ней выполняется преобразование значения LMI_PAYMENT_DESC в Win1251 с помощью стандартных средств PHP, ASP и т.д., после чего LMI_PAYMENT_DESC в таком виде передаётся на WM Merchant - то WM Merchant всё равно отображает кракозябры. Ну и, естественно, эти же кракозябры попадают потом в Примечание WM-перевода.

Но кто прошлое помянет - тому глаз вон. Теперь проблема решена. Один из представителей WebMoney отписался на форуме Кофейня о том, что в протокол WM Merchant'а введен необязательный (и, судя по всему, пока недокументированный) параметр LMI_PAYMENT_DESC_BASE64. Суть его такова. Если то, что вы хотите передать внутри LMI_PAYMENT_DESC, содержит русские буквы и представлено в кодировке UTF8, то вы можете применить к этой строке base64-кодирование, после чего то, что получилось, передать в параметре LMI_PAYMENT_DESC_BASE64.

Получив такой параметр, WM Merchant декодирует его в родную для себя Win1251, а строка, которая получилась в результате декодирования, подставляется в Примечание. Русский текст при этом отображается нормально. Если при этом LMI_PAYMENT_DESC также передан, то он ВМ Мерчантом игнорируется.

Проверено - работает! Слава Аллаху и гениальному base64! Для примера, в PHP применить base64-кодирование очень просто:

base64_encode("здесь примечание к платежу")
прочтений: 8221 / уникальных: 3654
Если Вам понравилась статья, подпишитесь на оповещения:

Комментарии (1)
Oneratnov 17.08.12 22:39 #
спасибо

введите этот код
Мое имя:
я не зарегистрирован и не хочу
это моё зарегистрированное имя
хочу зарегистрировать это имя
Email:      
 оповещать об ответах
   Что нового почитать?
Мой номер телефона утерян и не подлежит восстановлению. Как быть? 06.10.16 [4]
ВОПРОС: Долго не пользовался своей симкой. Номер заблокирован, восстановлению не подлежит. Как востановить доступ к кошельку?
Автомобилистам на заметку: как оплатить штраф по WM 04.10.16
Сегодня мы хотим напомнить о возможностях, которые существуют в WebMoney для оплаты штрафов ГАИ и дорожных сборов. Если неприятность всё же произошла ...
На WebMoney Merchant можно принимать Биткоины 30.09.16 [5]
Если вы на вашем сайте принимаете WebMoney и делаете это через WebMoney Merchant, то для вас есть хорошая новость. Теперь с вами смогут рассчитаться т...
Муравей-бот отвечает на вопросы о WebMoney в Telegram 27.09.16
WebMoney запустил интеллектуального бота-помощника для мессенджера Telegram. Он постарается понять ваш вопрос и дать на него ответ.Для начала, разбере...
Автоплатежи помогут не забыть об оплате 27.09.16
В WebMoney Keeper, а также в личный кабинет Telepay добавлена опция автоплатежа для 3х крупнейших мобильных операторов России: Билайна, МТС и Мегафона...
Новая библиотека для платформы .Net 14.09.16
Разработчикам будет полезно узнать, что выпущена новая версия библиотеки для работы с XML-интерфейсами WebMoney для платформы Microsoft .Net.В ней реа...
WebMoney пришла в Молдову 14.09.16 [4]
WebMoney предоставила возможность работы с кошельком, номинированным в молдавских леях. Однако, кошелек этот не совсем обычный.Во-первых, кошелек созд...
В обновленных Киперах появились регулярные платежи 04.08.16
Обновилась вся линейка мобильных Киперов (iOS, Android, Windows Phone, MacOs X и BlackBerry OS 10), а также браузерный Keeper Standard.Главное новшест...

   Кофейня (форум)
Партнерская программа 21.06.17
Продам Магазин цифровых товаров RUSSIANWMSHOP v3.0 10.05.17
Где купить Paymer чеки за КИВИ? 16.04.17

   p2p
Меняют 10000 UAH на 24200 Qiwi (курс:2.42) 22.06.17
Меняют 25500 UAH на 1000 WMZ (курс:25.5) 22.06.17
Меняют 35000 WMU на 35315 UAH (курс:-0.9%) 22.06.17

   WebMoney TOP
Зарегистрирован Скрипты обменников, кредитного автомата. Продажа скриптов ввода-вывода электронных валют, банковских систем, скриптов автоматического онлайн ...
Зарегистрирован Wm-Change.Com Обменный пункт Wm-Change.Com предоставляет услуги по выдаче наличных в г.Харьков,моментального обмен...
Зарегистрирован PVcash Наш On-line сервис предназначен для тех, кто хочет быстро, безопасно и по выгодному курсу обменять т...

   WM-Клуб
Присоединился Василий Галанов
Присоединился Николай Метлюк
Присоединился Евгений Кудрявцев


 
Все права на материалы, опубликованные на owebmoney.ru, охраняются в соответствии с законом об авторском праве. Разрешено копирование без согласования при условии указания гиперссылки на сайт (без атрибута nofollow и сокрытий) непосредственно до\после материала.