Перейти к содержимому


Фотография

WebMoney Merchant

mercant wmr buy

  • Пожалуйста, авторизуйтесь для ответа.
19 ответов в данной теме

#1 Новичок 422823017274 (WMID 422823017274 )

  • Группа: Пользователи
  • сообщений 3
  • Регистрация: 26-ноября 13
  • Webmoney BL

Отправлено 26 ноября 2013 - 17:30

Помагите пожалуйста!!! Мне нужно сделать оплату WebMoney на моем сайте через систему WebMoney Merchant сразу на несколько кошельков при нажатии на одну кнопку "Оплатить". Это вообще возможно? На сайте WebMoney я нашел только оплату на Один кошелек, а в подробной инструкции WebMoney Merchant не могу разобраться что к чему.
Заранее благодарен!


    • 0
  • Наверх

#2 Обычный пользователь, не сотрудник AndrewTishkin (WMID 282697973392 )

  • Группа: Модераторы
  • сообщений 16 602
  • Регистрация: 17-ноября 08
  • МестоположениеРоссия/Глазов
  • Webmoney BL

Отправлено 27 ноября 2013 - 01:13

Первый вопрос: а нафига?

Вы что, пирамиду "семь волшебных кошельков" собрались строить? :D  :angry:

 

Невозможно это. Потому что не могу представить, для чего могло понадобиться такое извращение (исключая упомянутый лохотрон).

И разработчики тоже не могли.

 

Можно сформировать файл для массовых платежей и попросить человека загрузить его для исполнения на соответствующий сервис.

Можно через выставление доверенностей и интерфейсы списывать средства с кошельков клиента, если тому придётся это по душе.

Можно самому через интерфейсы принятый один платёж клиента раскидывать по разным кошелькам со своего.

 

Только ещё раз - зачем?!


1zpt4647mzk.png.png Реферально-партнёрские ссылки и откровенная (само)реклама на форуме допускаются только в личной подписи :excl:
    • 1
  • Наверх

#3 Новичок 422823017274 (WMID 422823017274 )

  • Группа: Пользователи
  • сообщений 3
  • Регистрация: 26-ноября 13
  • Webmoney BL

Отправлено 27 ноября 2013 - 16:31

Первый вопрос: а нафига?

Вы что, пирамиду "семь волшебных кошельков" собрались строить? :D  :angry:

 

Невозможно это. Потому что не могу представить, для чего могло понадобиться такое извращение (исключая упомянутый лохотрон).

И разработчики тоже не могли.

 

Можно сформировать файл для массовых платежей и попросить человека загрузить его для исполнения на соответствующий сервис.

Можно через выставление доверенностей и интерфейсы списывать средства с кошельков клиента, если тому придётся это по душе.

Можно самому через интерфейсы принятый один платёж клиента раскидывать по разным кошелькам со своего.

 

Только ещё раз - зачем?!

 

Вы наверно не так поняли, у меня вот есть товар, и как мне сделать на сайте, чтобы покупатель мог выбрать какой валютой он будет оплачивать товар.


    • 0
  • Наверх

#4 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 27 ноября 2013 - 17:19

Вы наверно не так поняли, у меня вот есть товар, и как мне сделать на сайте, чтобы покупатель мог выбрать какой валютой он будет оплачивать товар.

посмотрите тут. если что-то не ясно - задаём вопрос.


Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх

#5 Знаток metallostroy (WMID 402540298935 )

  • Группа: Пользователи
  • сообщений 11 474
  • Регистрация: 09-марта 13
  • Webmoney BL

Отправлено 27 ноября 2013 - 17:41


Вы наверно не так поняли, у меня вот есть товар, и как мне сделать на сайте, чтобы покупатель мог выбрать какой валютой он будет оплачивать товар.

посмотрите тут. если что-то не ясно - задаём вопрос.


Я так понял, что уму надо в форме выпадающее меню вида:

1 рубль
0,33 WMZ
100500 WMB

То есть, один товар, но разные суммы и разные валюты.
В личных сообщениях не консультирую, на "ау" и прочие "ты тут" не отвечаю, все вопросы только в топиках.
    • 0
  • Наверх

#6 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 27 ноября 2013 - 17:44

 

Вы наверно не так поняли, у меня вот есть товар, и как мне сделать на сайте, чтобы покупатель мог выбрать какой валютой он будет оплачивать товар.

посмотрите тут. если что-то не ясно - задаём вопрос.

 

Я так понял, что уму надо в форме выпадающее меню вида:

1 рубль
0,33 WMZ
100500 WMB

То есть, один товар, но разные суммы и разные валюты.

... и разное описание товара.

а так же настроить приём в Мерчанте, потому как по умолчанию все кошельки выключены и нет там никаких кодов и ссылок.


Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх

#7 Новичок 422823017274 (WMID 422823017274 )

  • Группа: Пользователи
  • сообщений 3
  • Регистрация: 26-ноября 13
  • Webmoney BL

Отправлено 27 ноября 2013 - 21:45

Смотрите, вот товар http://wmshop.org/goods.php?id=74 (не реклама), там где покупка, есть выбор в какой валюте платить, как такое настроить? Кошельки мерчанта настроены у меня.


    • 0
  • Наверх

#8 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 27 ноября 2013 - 22:08

Смотрите, вот товар http://wmshop.org/goods.php?id=74 (не реклама), там где покупка, есть выбор в какой валюте платить, как такое настроить? Кошельки мерчанта настроены у меня.

)) для этого нужно познать уже не HTML, а PHP... в случае HTML можно использовать тэг select и option. вот с того сайта код выпадающего списка:

Spoiler

 
вот сам код (чтоб не набирали, можете создать HTML и посмотреть, что будет):

<select class="button3" name="valyta" size="1">
<option value="Z" selected="">0.3 WMZ</option>
<option value="R">9.68 WMR</option>
<option value="E">0.26 WME</option>
<option value="U">2.50 WMU</option>
<option class="option_zp" value="ZP">9.68 Z-Payment</option>
</select>
 

но так покупатель сможет выбирать только один параметра, а не два. а в случае формы Мерчанта один параметр отвечает за сумму, а второй за валюту:

<input type="hidden" value="СУММА" name="LMI_PAYMENT_AMOUNT">
<input type="hidden" value="КОШЕЛЁК" name="LMI_PAYEE_PURSE">

поэтому будет два select - это не разумно) тут только PHP спасёт)
 
Вы не думали поставить какой-нибудь модуль "магазина" на свой сайт или Ваш сайте не на CMS?


Сообщение отредактировал st-help.com: 27 ноября 2013 - 22:09

Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх

#9 Обычный пользователь, не сотрудник AndrewTishkin (WMID 282697973392 )

  • Группа: Модераторы
  • сообщений 16 602
  • Регистрация: 17-ноября 08
  • МестоположениеРоссия/Глазов
  • Webmoney BL

Отправлено 28 ноября 2013 - 00:36

Тут скорее спасёт не серверный PHP, а клиентский браузерный JavaScript.

 

На примитивном же уровне можно реализовать и на чистом HTML, только придётся несколько форм насоздавать, отличающихся только кошельками и суммами


1zpt4647mzk.png.png Реферально-партнёрские ссылки и откровенная (само)реклама на форуме допускаются только в личной подписи :excl:
    • 0
  • Наверх

#10 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 28 ноября 2013 - 10:35

Тут скорее спасёт не серверный PHP, а клиентский браузерный JavaScript.

 

На примитивном же уровне можно реализовать и на чистом HTML, только придётся несколько форм насоздавать, отличающихся только кошельками и суммами

почему PHP не спасёт?


Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх

#11 Обычный пользователь, не сотрудник AndrewTishkin (WMID 282697973392 )

  • Группа: Модераторы
  • сообщений 16 602
  • Регистрация: 17-ноября 08
  • МестоположениеРоссия/Глазов
  • Webmoney BL

Отправлено 28 ноября 2013 - 20:54

А как это будет выглядеть с PHP?

Отсылаем запрос на сервер и он отдаёт нам ту же самую страницу, но в содержимом которой в форме отправки данных о платеже мерчанту будут фигурировать другой кошелёк и другая сумма? Из пушки по воробьям - лишние секунды, лишний трафик, лишняя нагрузка на хостинг.

 

С JavaScript же внедрённый в страницу скрипт в браузере клиента по нажатию какой-то кнопки или чего-то другого (например, переключателя: input с type="radio") просто меняет value нужного input-а ("нужность" определяется по name).

Я даже на форуме чего-то подобное показывал


1zpt4647mzk.png.png Реферально-партнёрские ссылки и откровенная (само)реклама на форуме допускаются только в личной подписи :excl:
    • 0
  • Наверх

#12 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 28 ноября 2013 - 21:41

А как это будет выглядеть с PHP?

да вот мудрил сегодня, но что-то не срослось)

 

например, переключателя: input с type="radio"

а есть отличия select от radio? в первом случае выпадает список, а второй - переключаем кружочек.

в обоих случаях value - value и name-name.

 

Единственный интересный момент - это использовать "загадочную" (для меня, по крайней мере) форму от Мерчанта. Находится она тут. Я пытался настроить через Java оплату, но так и не получил желаемых результатов. Скорее всего от того, что я не программист, поэтому и "сел в лужу"))


Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх

#13 Обычный пользователь, не сотрудник AndrewTishkin (WMID 282697973392 )

  • Группа: Модераторы
  • сообщений 16 602
  • Регистрация: 17-ноября 08
  • МестоположениеРоссия/Глазов
  • Webmoney BL

Отправлено 28 ноября 2013 - 22:48

а есть отличия select от radio? в первом случае выпадает список, а второй - переключаем кружочек.
в обоих случаях value - value и name-name

Ну да, там выпадающий список (хотя не только), а у input-а (само же слово переводится как "ввод") различные варианты ввода, которые задаются атрибутом type

Value (передаваемое на сервер в запросе значение) и name (название этого значения) это просто стандартные наименования.

 

 

С Merchant Wizard с автоматической генерации формы оплаты через "волшебную" ссылкуя экспериментировал - глючный (не работает русскоязычное примечание к платежу).

Какие желаемые результаты требовались? Для варианта без ссылки, просто для мастера-визарда там по сути ничего особенного нет, только выбор разных вариантов, которые генерируются для вставки на сайт этим мастером...


1zpt4647mzk.png.png Реферально-партнёрские ссылки и откровенная (само)реклама на форуме допускаются только в личной подписи :excl:
    • 0
  • Наверх

#14 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 29 ноября 2013 - 01:32

а есть отличия select от radio? в первом случае выпадает список, а второй - переключаем кружочек.
в обоих случаях value - value и name-name

Ну да, там выпадающий список (хотя не только), а у input-а (само же слово переводится как "ввод") различные варианты ввода, которые задаются атрибутом type

Value (передаваемое на сервер в запросе значение) и name (название этого значения) это просто стандартные наименования.

в form передаются одинаковые параметры или нет?

и я постараюсь на PHP сообразить и если что, то выложу сюда. а идея уже крутится:

if(!preg_match("страшные_цифры", $purse))

вот если разберу, как эта функция preg_match работает, то вообще проблема решена!)

тогда можно по кошельку определять. например, WMR, а дальше обработчик подставляет то, что нужно.

пример проверки адреса электронной почты есть:

if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $email))

но как оно работает я не понял))

 

Какие желаемые результаты требовались?

стандартная форма оплаты через JS.


Сообщение отредактировал st-help.com: 29 ноября 2013 - 09:58

Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх

#15 Обычный пользователь, не сотрудник AndrewTishkin (WMID 282697973392 )

  • Группа: Модераторы
  • сообщений 16 602
  • Регистрация: 17-ноября 08
  • МестоположениеРоссия/Глазов
  • Webmoney BL

Отправлено 29 ноября 2013 - 02:43

From или form?

В форме передаётся то, что там выбрано-введено пользователем или "зашито" создателем.

 

Про PHP так и не могу понять, зачем что-то с ним соображать...

 

Регулярные выражения штука сложная и страшная, ночью про неё думать не хочется. :)

 

Первый символ строки пришедшей к нам в POST-запросе для определения типа кошелька, если цель в этом, можно узнать проще:

echo $_POST["LMI_PAYEE_PURSE"][0];

или

$purse =  $_POST["LMI_PAYEE_PURSE"];

$wmvaluta = $purse[0];

(строка - массив символов, отсюда обращение к каждому символу как к отдельному элементу через квадратные скобки в конце, с номером элемента; а нумерация в программировании почти всегда идёт с нуля)

 

Дальше уже можно переходить к сравнению

if ($wmvaluta == 'R' || $wmvaluta == 'r') {

echo 'Платили в WMR';

} elseif ($wmvaluta == 'Z' || $wmvaluta == 'z') {

echo 'Платили в WMZ';

} else {

echo 'Не знаю, в чём платили';

}

Хотя правильнее было бы такой выбор делать через switch

 

Всё-таки не понимаю, зачем тут PHP, если надо через JS. Просто ещё раз напомню про

Я даже на форуме чего-то подобное показывал

и покажу напоследок примитивный корявенький работающий код, который можно проверить

вот тут, или тут, или здесь

(я проверял по привычке по первой ссылке - копируем, вставляем, жмём на Submit Code и тестируем результат в правой половине экрана)

 

<form method="POST" action="https://merchant.webmoney.ru/lmi/payment.asp">
<input type="text" name="LMI_PAYEE_PURSE" value="R000111000111">
<input type="text" name="LMI_PAYMENT_AMOUNT" value="33">
<input type="text" name="LMI_PAYMENT_DESC" value="Test">
</form>

Я хочу заплатить: <button type="button" onclick="document.getElementsByName('LMI_PAYEE_PURSE')[0].value='R000111000111';document.getElementsByName('LMI_PAYMENT_AMOUNT')[0].value='33';">33 WMR</button>
<button type="button" onclick="document.getElementsByName('LMI_PAYEE_PURSE')[0].value='Z000222000222';document.getElementsByName('LMI_PAYMENT_AMOUNT')[0].value='1';">1 WMZ</button>

 

(тут нолик в квадратных скобках значит, что работаем с первым из всех найденных на странице html-элементов по имени - by name)


1zpt4647mzk.png.png Реферально-партнёрские ссылки и откровенная (само)реклама на форуме допускаются только в личной подписи :excl:
    • 0
  • Наверх

#16 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 29 ноября 2013 - 10:21

From или form?

form.

 

Про PHP так и не могу понять, зачем что-то с ним соображать...

....

Всё-таки не понимаю, зачем тут PHP...

потому что 422823017274 давал ссылку и, как я понимаю, именно на PHP, а не на JS:

Смотрите, вот товар http://wmshop.org/goods.php?id=74 (не реклама), там где покупка, есть выбор в какой валюте платить, как такое настроить? Кошельки мерчанта настроены у меня.


и если там совершаем переход, то попадаем на вторую страницу. да, в случае с JS мы не уходим со страницы, проверка сразу же происходит на первой странице и второй будет уже сам Мерчант и это скорее всего лучше (для сервера). случай с JS лучше однозначно, если не вводятся никакие данные, а происходит выбор данных из какого-то списка. а в случае с вводом (мне кажется) будет лучше, если пользователь всё же перейдёт на вторую страницу и внимательно проверит введённые данные.

 

в любом случае с PHP напишу код, т.к. исходники не помешают. а вот с JS нужно разбираться. никогда не работал с ним...


Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 1
  • Наверх

#17 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 01 декабря 2013 - 14:45

Стопорнулся в сравнении с символами.
Форма запроса (он же "index.php"):

Spoiler


или полный код на PHP:


Spoiler

 

Обработчик (он же "purse.php"):


Spoiler


или полный код на PHP.


Spoiler


по результатам видим, что цифры обрабатывает норм, а вот с символами :wacko:
что не так?


Spoiler

 

PS: BB-код (code) движка форума оставляет желать лучшего...


Сообщение отредактировал st-help.com: 01 декабря 2013 - 14:52

Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх

#18 Обычный пользователь, не сотрудник AndrewTishkin (WMID 282697973392 )

  • Группа: Модераторы
  • сообщений 16 602
  • Регистрация: 17-ноября 08
  • МестоположениеРоссия/Глазов
  • Webmoney BL

Отправлено 02 декабря 2013 - 00:42

Ой, какой ужас, для захвата нескольких символов же есть substr

 

Честно: из такого кода я не понял, что тут не так.

Символы как раз обработались норм - мы со страницы послали скрипту строчку 0.3 WMZ, её он нам и разобрал по символам (само собой показав только семь - больше-то и нет)


1zpt4647mzk.png.png Реферально-партнёрские ссылки и откровенная (само)реклама на форуме допускаются только в личной подписи :excl:
    • 0
  • Наверх

#19 Знаток ^-^ (WMID 273407224562 )

  • Группа: Пользователи
  • сообщений 6 059
  • Регистрация: 10-сентября 13
  • Webmoney BL

Отправлено 02 декабря 2013 - 00:48

Ой, какой ужас, для захвата нескольких символов же есть substr

substr позволяет вернуть строку определённой длины, а мне нужно сравнить символ в определённом месте строки с тем, который есть в коде (в обработчике)...
 

Честно: из такого кода я не понял, что тут не так.
Символы как раз обработались норм - мы со страницы послали скрипту строчку 0.3 WMZ, её он нам и разобрал по символам (само собой показав только семь - больше-то и нет)

Это всё ясно, но почему они в switch case не определились?.. точка и W почему их нет там?..


Сообщение отредактировал st-help.com: 02 декабря 2013 - 01:10

Бесплатный SSL на 3 мес. / Сертификат SSL от 299 руб.
    • 0
  • Наверх

#20 Обычный пользователь, не сотрудник AndrewTishkin (WMID 282697973392 )

  • Группа: Модераторы
  • сообщений 16 602
  • Регистрация: 17-ноября 08
  • МестоположениеРоссия/Глазов
  • Webmoney BL

Отправлено 02 декабря 2013 - 03:22

нужно сравнить символ в определённом месте строки с тем, который есть в коде

Конечная цель какая? Наверняка возможен красивый и лаконичный пируэт.

Это всё ясно, но почему они в switch case не определились?.. точка и W почему их нет там?..

В документации такого не увидел, найти тоже по-быстрому не получилось, уже сам выдвинул предположение и на практике оно подтвердилось. Правда при более глубоком изучении, причина оказалась всё-таки несколько в другом, ^_^ но выложу весь ход мыслей.
(Кстати, я эксперименты на компьютере провожу через open-server.ru, раньше имел дело с Denwer-ом, но там уже несколько лет обещают версию 4, :D уже всякая вера в её появление пропала...

Есть ещё XAMPP, но я его не пробовал)


Одна из главных особенностей PHP - Манипуляции с типами
Предположение состояло в том, что мы мешаем в switch сразу и числа, и символы (правильнее - строки, просто длиной в один символ :)).
И switch работает только с тем типом, с которого начинается первый case, то есть с числами, а символы игнорирует.

Но на самом деле такой результат со сплошными нулями выдаётся по другой причине.
Смотрим документацию по switch:

Quote
Заметьте, что конструкция swich/case использует неточные сравнения (==).

Далее - Таблица сравнения типов в PHP, конкретно - таблицу "Гибкое сравнение с помощью =="
Находим ячейку, находящуюся на пересечении 0 (нуля) и "php" (условное обозначение непустой строки), видим в ней TRUE.
Таким образом, сравнивая, например, 'W' с 0 мы всегда получим ИСТИНУ, а значит этот самый первый первый case сравнения с нулём всегда будет срабатывать. :) И в показанном результате всё верно - первый ноль получился при сравнении с реальным нулём, третья тройка - при сравнении с тройкой, остальное - результат сравнения строки с нулём.
Если бы свитчем использовалось жёсткое сравнение ===, такого бы не произошло. Кстати, в комментариях к статье документации есть замечания на эту тему.

Короче, как проще всего это побороть? Превращением цифр в строки, заключив их в одинарные или двойные кавычки:

Quote
switch ($_POST['purse'][$i]) {
case '0':
echo "$i это 0<br/>";
break;
...


Сообщение отредактировал AndrewTishkin: 02 декабря 2013 - 03:25

1zpt4647mzk.png.png Реферально-партнёрские ссылки и откровенная (само)реклама на форуме допускаются только в личной подписи :excl:
    • 1
  • Наверх