![]() |
|
![]() ![]() ![]() |
|
trix |
|
|||
![]() Observer Grabus ![]() ![]() Профиль Группа: Участник Сообщений: 534 Регистрация: 30.1.2003 Где: Odessa Репутация: 1 Всего: 12 |
Есть такой параметр как LMI_PAYMENT_DESC, это описание товара. сайт у меня на utf-8 и строка которую я передаю в этот параметр тоже UTF-8.
а страница оплаты, куда направляются все данные о платеже https://merchant.webmoney.ru/lmi/payment.asp в кодировке windows-1251. если я этот параметр передаю просто так, то на той странице описание товара написано краказяброй(естественно, кодировки же разные). а если я делаю такой код $nmz = mb_convert_encoding($nmz,'windows-1251','utf-8'); т.е. перевожу кодировку в ту что на той странице, то это описание еще большая краказябра(чего я понять немогу). уже незнаю что деалать, помогите плиз. ($nmz это переменная текст которой присваивается параметру LMI_PAYMENT_DESC). -------------------- Тупое, бездушное SMS никогда, слышите вы? никогда не заменит живое общение по ICQ! |
|||
|
||||
trix |
|
|||
![]() Observer Grabus ![]() ![]() Профиль Группа: Участник Сообщений: 534 Регистрация: 30.1.2003 Где: Odessa Репутация: 1 Всего: 12 |
Порыскал по просторам сети в поисках решения как оказывается весьма популярной проблемы и нашел один единственный выход, который и реализуют все у кого возникла данная ситуация. перевел весь сайт в кодировку windows-1251.
-------------------- Тупое, бездушное SMS никогда, слышите вы? никогда не заменит живое общение по ICQ! |
|||
|
||||
mrsol |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 1.4.2008 Репутация: 1 Всего: 1 |
А в чём собственно проблема то?
Учите хтмл переде тем как программировать начинать. <form accept-charset="cp1251" action="https://merchant.webmoney.ru/lmi/payment.asp" method="POST"> Это работает на utf-8 страницах и деск не надо переводить в сп1251, нужно оставить в утф. ЗЫ. Пришлось даже зарегиться чтобы ответить. |
|||
|
||||
Serkys |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1061 Регистрация: 19.4.2004 Репутация: нет Всего: 22 |
mrsol, поздновато ты ответил, четыре месяца прошло
![]() Спасибо тебе, меня твой ответ очень выручил. Насчёт "учите HTML" - довольно спорно. Я веб-программист, и мне совершенно не хочется лезть в дебри смежной, но всё же далёкой от меня области и учиться верстать. Мне программировать интереснее и полезнее, именно это есть моя работа, а ради решения одной проблемы в месяц, которую можно выгуглить или спросить на форуме, учить HTML мне совершенно не хочется. Лучше я за это время стану ещё лучшим программистом, чем неумелым верстальщиком. |
|||
|
||||
mrsol |
|
||||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 1.4.2008 Репутация: 1 Всего: 1 |
4 месяца потому-что больше вообще похожих тем небыло. И решил ответить тут, чтобы другие находили. А вот по поводу
Вы этим постом сказали примерно следующее. Я создаю двигатели для машин, а как у неё крутяться колеса, и что такое вообще машина, мне это не нужно. И это не смежная область. Если конечно вы не занимается чисто разработкой серверных систем на рыныры, которые не выходят в вэб. Базовые знания хтмылы и протокола передачи хттпы нужно знать любому программисту, который хочет писать не только хоме паги. ПыСы. Извиняюсь если кого зацепили или обидел. |
||||
|
|||||
Serkys |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1061 Регистрация: 19.4.2004 Репутация: нет Всего: 22 |
Некорректное сравнение. Как всё работает я стремлюсь узнать как можно лучше. Но желания изучать HTML у меня нет никакого. Про приведённый выше "accept-charset" и подобные ему вещи знать надо, но я не вижу необходимости серверному программисту вдаваться в подробности клиентских технологий. Если проект серьёзный, этим занимается верстальщик/клиентский программист, я лучше проконсультируюсь с ними или посмотрю в инете. |
|||
|
||||
trix |
|
|||
![]() Observer Grabus ![]() ![]() Профиль Группа: Участник Сообщений: 534 Регистрация: 30.1.2003 Где: Odessa Репутация: 1 Всего: 12 |
вообще-то на таких форумах спрашивают именно за тем, чтоб учится. честно говоря уже ДОСТАЛИ люди, которых спрашиваешь, а они посылают тебя несправедливо. я ж не пришел я вопросом типа "напишите все за меня"... но это все имхо и оффтоп. mrsol, спасибо за ответ, но я не считаю что "accept-charset" это азы, так как очень не много народу о нем знают. зы Извиняюсь если кого зацепили или обидел ![]() зыы считаю что тему можно закрыть, так как сейчас флуд пойдет. -------------------- Тупое, бездушное SMS никогда, слышите вы? никогда не заменит живое общение по ICQ! |
|||
|
||||
mrsol |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 1.4.2008 Репутация: 1 Всего: 1 |
Наверное хочет пофлудить мне
![]() Извеняюсь если кого обидел или обижу, но Ну вот допустим я, в своё время написал автоматический обменный пункт. Но так как писал сам, то пришлось писать и сервеную часть самому и морду. Конечно если работаеш в команде и у тебя чисто надо сделать нормальную логику, апи, не пробиваемость в никаких случаях, то да это знать и не нужно, ВООБЩЕ НЕ НУЖНО. Если Вы серверный программист и отдаете допустим данные формы по апи некоторой морде, то морда сама должна состовлять форму с учетом этих данных и Вы к кодировке не имеете никакого отношения. Хотя может логика быть разной и вы можете отдавать сразу форму, которую морда должна показать клиенту, но это не есть гуд, правда и это не относится к данной теме. Далее, я тоже во много серверный программер, управление голосовыми каналами, управление всякого рода железками. Очень много работают с платежными системами. И это всё на ПХП. Но ко всему вышесказанному, могу о себе сказать следующее. Данную тему мне показал товариш, он тоже не мог справится с данной проблемой. И решение я тоже не знал (как дефакто, я стараюсь все дескрипшены на любые платежные системы писать в транслите), и мне всего понадобилось 15 минут на обдумавание почему так получается, ещё пару минут на получения знания о том что есть возможность передавать accept-charset, ещё пару минут на проведения тестов и всё. Я наверное не совсем правильно выразился, или мой пост не правильно поняли. Тут я имел введу, что нужно знать нормальные базовый знания хтмл, и если ты их знаеш, то знаеш куда нужно копать в поисках решения. Понятное дело что нельзя полностью знать тот-же хтмл или тот-же рыныры. Но если у тебя заложены хорошие базовые знания и есть логическое мышление (а для программера это обязательно), то ответ можно всегда найти.
Так всё таки вэб программист или же серверный программист? И формы для вэб программиста и всё что с ними связанно, как раз не смежная часть, а относится непосредственно к программингу. Или вы хотите сказать, что дизайнер или версталшик, навоял вам форму, подставив какуе-то белеберду в названия переменныхи и в актион, и Вы как программист будет работать с этими переменными, потому как это работа версталшика и Вы туда не лезите? |
|||
|
||||
Evgeni68 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 9.7.2007 Репутация: нет Всего: 3 |
Кстати accept-charset не работает в IE:)
|
|||
|
||||
point999 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 23.12.2008 Репутация: нет Всего: нет |
У меня та же проблема: нужно чтобы ie отправлял данные из формы в заданой кодировке (windows-1251), чтобы не переводить весь сайт (который в utf-8) в эту кодировку. А accept-charset этот "чудный" и "попалярный" браузёр не воспринимает (в любой версии). Может у кого-то есть решение - буду очень благодарен.
|
|||
|
||||
nerezus |
|
||||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 1 Всего: 43 |
Сравнение повернее: я хочу делать коронарное шунтирование, но нет никакого желания работать со скальпелем. P.S. Пригодился совет выше с кодировкой. Странно, что на сайте wm нигде этого не написано. Непрофессиональо как-то. Хотя чего еще ждать от конторы, которая юзает левые сертификаты =)
перекодировка через iconv не помогает. |
||||
|
|||||
maxim09 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 2.8.2009 Репутация: нет Всего: нет |
Спасибо большое!!! Я весь нэт прошарил..... Все так просто!!!! +10 Буду учить html)))))) Пришлось даже зарегиться чтоб сказать спасибо!!!! |
|||
|
||||
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 1 Всего: 43 |
maxim09, я тебя огорчу: это не работает в IE.
Решение такое: сабж для нормамальных браузеров и транслит для IE. Я делаю именно так. |
|||
|
||||
GremlinProg |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: нет Всего: 106 |
не слишком старая тема, хотя начало еще в позопрошлом году,
вот тоже столкнулся с такой проблемой, но не в плане передачи данных, как таковых, а в работе с формой через GET тут проблема уже не только с IE, но и с FF, который зачем-то пытается подобрать кодировку не только для пути (это нормально), но и для QUERYSTRING что получается: отправляешь формой что-нибудь на вроде "мамамылараму" со странички (кодировка страницы: windows-1251) на адрес на подобии http://mysite.mir/мама/мыла/раму/ и получаешь кракозябры в пути, но понятные "мамамылараму" в QUERYSTRING (это в FF) сам URI построен корректно, т.е. путь - заэскейпенная UTF-8 строка понятно, что это - следствие криво построенного URI, который генерируется формой (ну не должно быть в URI ни каких koi и win-1251 - только UTF-8), однако, раз уж форма это делает, зачем браузер пытается разбирать QUERYSTRING? пусть бы и было оно там заэскейпенным, это же данные формы ) теперь вернемся к вопросу про IE и его якобы нерабочий accept-charset:
объясняю: ACCEPT-CHARSET у майкрософт - это не дешефратор, не задает этот атрибут кодировку данных, это просто дополнительная перестраховка на тот случай, если данные формы не укладываются в кодировку документа, только в этом случае атрибут и будет задействован! просто остальные браузеры, понимая данную ограниченность стандарта, используют его именно в целях перекодировки, а то, что его такое поведение - именно исключение из стандарта, предпочитают благополучно забыть чтобы все-таки послать в IE данные с формы в нужной кодировке, не заморачиваясь в JS и не меняя кодировку сайта, можно просто подставить перед запросом свой конвертер, т.е. посылаем форму самому себе на php-скрипт, который просто конвертирует данные и редиректит их в заданном направлении -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
UNIUS |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 12.10.2009 Репутация: нет Всего: нет |
Привет. accept-charse тут не пройдёт.
Вместо LMI_PAYMENT_DESC я пользую LMI_PAYMENT_DESC_BASE64. а именно <? echo '<input name="LMI_PAYMENT_DESC_BASE64" value="'.base64_encode("Русский текст").'">'; |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Платёжные системы и расчёты через Интернет | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |