|
|
|
| Ну, вобщем не знаю, для кого-то может и не хитрый...
Итак, нужно выполнить следующее:
У меня есть форма. В неё вводятся некоторые данные, которые, после нажатия кнопки "submit", улетают в скрипт "B" и затем им обрабатываются. Всё хорошо, но если нужно, чтобы данные обрабатывались двумя скриптами (одновременно или по очереди). Допустим, нужно, чтобы эти данные сначала попадали в скрипт "A", там обрабатывались и только потом происходила их отправка в скрипт "B".
Т.е. получается следующее:
"Данные" => "A" (обработка) => "B" (обработка) ИЛИ "Данные" => "A"+"B" (одновременная обработка - данные отправляются и в скрипт "A" и в скрипт "B")
Причём "B" - скрипт стороннего сервера.
Вот такая вот штучка... | |
|
|
|
|
|
|
|
|
для: cheops
(22.03.2005 в 22:04)
| | Ну вот, попробовал... Не работает...
Вот как пробовал:
<input type="submit" value="submit" onClick="<SCRIPT Language="Javascript">
function balance()
{
var var1;
var uid
...
var1=document.pay.var1_name.value;
uid=document.pay.uid.value;
window.open('http://www.MyServer/MyScript.php?var='var1_name'&uid='uid'');
}
</SCRIPT>">
|
Ну что не так??? | |
|
|
|
|
|
|
|
для: evgen_17
(22.03.2005 в 22:43)
| | А какие значения принимают var1 и uid - там числа, строки, на русском, на английском? | |
|
|
|
|
|
|
|
для: cheops
(22.03.2005 в 22:51)
| | var1 - принимает всегда только одно значение "LMI_PAYMENT_AMOUNT"
uid - принимает разные значение (цифры буквы рус и англ знак "_") это имя (Логин) пользователя. | |
|
|
|
|
|
|
|
для: evgen_17
(22.03.2005 в 22:56)
| | А как выглядит URL страницы после перенаправления. Помоему, стоит переправить строку
'http://www.MyServer/MyScript.php?var='var1_name'&uid='uid''
|
на
'http://www.MyServer/MyScript.php?var=' + var1_name + '&uid=' + uid + ''
|
| |
|
|
|
|
|
|
|
для: cheops
(22.03.2005 в 23:26)
| | насколько я понял, товарищь ставит прием денег через моньку ( LMI_PAYMENT_AMOUNT - Сумма платежа, которую продавец желает получить от покупателя. Сумма должна быть больше нуля, дробная часть отделяется точкой.)
только не понял одного - зачем отправлять данные формы двум скриптам ???
может быть конечно он придумал новую систему приема денег ?
тогда может поделитесь с народом ? | |
|
|
|
|
|
|
|
для: Valeri
(23.03.2005 в 07:23)
| | Ага, значит "+" - обязательный параметр...
Valeri, новую систему я не придумываю. Мне просто нужно, чтобы сумма, которую отправил пользователь записывалась в базу. Просто, помните я говорил о балансе на сайте? Вот именно это я сейчас и делаю. И та сумма, которую пользователь отправил - будет начальным балансом. Вот за этим я и парюсь. Но если Вы знаете более простой способ, то поделитесь... Буду очень благодарен. | |
|
|
|
|
|
|
|
для: evgen_17
(23.03.2005 в 09:48)
| | Мда... Что-то не получается... Короче, чтобы проще было разобраться, вот вся форма:
<html>
<body>
<form id=pay name=pay method="POST" action="https://merchant.webmoney.ru/lmi/payment.asp">
<p>
<input type="hidden" name="LMI_PAYMENT_AMOUNT" value="1.0">
<input type="hidden" name="LMI_PAYMENT_DESC" value="Имя сервера">
<input type="hidden" name="LMI_PAYMENT_NO" value="1">
<input type="hidden" name="uid" value="Имя_пользователя"> //Приходит из другого скрипта, здесь он не указан.
<select name="LMI_PAYEE_PURSE">
<option value="ZКОШЕЛЁК">WMZ
<option value="RКОШЕЛЁК">WMR
</select>
<input type="hidden" name="LMI_SIM_MODE" value="0">
</p>
<p>
<input type="submit" value="submit" onClick="<SCRIPT Language="Javascript">
function balance()
{
var balance;
var uid
...
var1=document.pay.LMI_PAYMENT_AMOUNT.value;
uid=document.pay.uid.value;
window.open('http://www.MyServer.ru/script.php?var=' + LMI_PAYMENT_AMOUNT + '&uid=' + uid + '');
}
</SCRIPT>">
</p>
</form>
</body>
</html>
|
Вот... По моему что-то с кавычками (onClick="..."). Наверно скрипт просто не выполняется... | |
|
|
|
|
|
|
|
для: evgen_17
(23.03.2005 в 09:48)
| | Я теперь делаю так. (Тоже не очень получалось)
скрипт A. Получает данные делает с ними что хочет, а потом отправляет дальше.
<form action='path/to/cript' name='pay'>
<input type=hidden name=var1 value=val1>
...
</form>
// эмуляция нажатия кнопки submit формы
<script>
obj = document.getElementById("pay");
obj.submit();
</script>
|
| |
|
|
|
|
|
|
|
для: evgen_17
(23.03.2005 в 09:48)
| | но эта сумма к вам возвращается на сайт с ВМ при оплате, аж 3 раза !!!
и вы можете с ней делать все что угодно и заносить куда угодно.
я вообще не понимаю в чем проблема ??? | |
|
|
|
|
|
|
|
для: Valeri
(23.03.2005 в 13:54)
| | Valeri, если вы знаете куда и когда она возвращается??? То скажите пожалуйста... Или просто, как мне занести эту сумму в БД??? Где ёё перехватить??? Какого типа данные приходят??? Можете всё доступно объяснить? Вы же спец в этом... Насколько я понял...
P.S. Если кото-нибудь знает где ошибка в приведённом мной скрипте, то укажите пожалуйста. Просто интересно. И кстате, как мне кажется, то какую сумму отправил пользователь, лучше записать одновременно с отправкой данных на WM... Но это моё мнение. | |
|
|
|
|
|
|
|
для: evgen_17
(23.03.2005 в 15:07)
| | я же прикреплял 2 архив, там все досконально описано, в каком месте что там не понятно ?
возвращается она на сайт туда куда вы укажите.
так же вернутся и все данные которые вы хотите что бы вернулись, даже те которык вы и не хотите вернутся :), отправится вам письмо, а то и 2 (как вы настроите в панеле управления счетом на сайте ВМ) со всеми данными по операции. сумму подменить невозможно, так как она формируется и отправляется не видимая для плательщика.
так же вы можете организовать на сайте, аж 3 проверки, и настроить их в панели счетом на ВМ. мне кажется что тут и так столько накручено и такие возможности предоставлены на выбор пользователю по настройкам, что еще что то мудрить это ................. у меня просто нет слов. | |
|
|
|
|
|
|
|
для: Valeri
(23.03.2005 в 19:20)
| | Да ё моё же а??? Нк почему просто не сказать, что не так в приведённом мной коде? Просто, для общего развития! | |
|
|
|
|
|
|
|
для: evgen_17
(23.03.2005 в 20:28)
| | И, кстате, Valeri, Вы говорите, что данные придут 3 раза, это хорошо... И, насколько я понимаю, если тот файл, куда должен приходить отчёт о том, выполнени платёж или нет, сделать PHP скриптом таого содержания:
<?
$LMI_PAYMENT_AMOUNT = $_POST['LMI_PAYMENT_AMOUNT'];
echo $LMI_PAYMENT_AMOUNT;
?>
|
То будет выдана страница с текстом "1.0" (сумма платежа).
Так???
Ну, а если мне ещё и свою переменную нужно добавить? Вот например "uid" - это имя того, кто выполняет платёж. Соответственно, от того, каково это имя, будет выбрана яйчейка в БД, в которую нужно писать сумму платежа... Но что-то я сомневаюсь, что и эта переменная попадёт в этот файл (типа "succes.php")... Или я ошибаюсь? | |
|
|
|
|
|
|
|
для: evgen_17
(23.03.2005 в 20:53)
| | А хотя, вот попробовал я даже и так, как в предыдущем сообщение написал (скрипт)
НЕ РАБОТАЕТ! Почему? Должно же... | |
|
|
|
|
|
|
|
для: evgen_17
(23.03.2005 в 21:24)
| | ОК, сам разобрался...
Проблема в одном. Как задать размеры окна?
Я пишу:
window.open('paycheck.php?var='+LMI_PAYMENT_AMOUNT+'&uid='+uid+'', 'HEIGHT=100 , WIDTH=100');
|
Всё работает, но размеры не задаются... | |
|
|
|
|
|
|
|
для: evgen_17
(23.03.2005 в 20:53)
| | вы можете приписать хоть сколько своих переменных, вроде в описание ясно сказано
"все переменные переданные без LMI_ считаются пользовательскими и необязательными. В процессе работы системы не участвуют и передаются обратно на заданный пользователем адрес его сайта".
В примере они обозначены как
<input type="hidden" name="FIELD_1" value="VALUE_1">
<input type="hidden" name="FIELD_2" value="VALUE_2">
...
<input type="hidden" name="FIELD_N" value="VALUE_N">
...
|
вы хоть с этими переменными "Войну и мир" все тома передайти, они к вам и вернутся.
Если у вас стоит в настройках 1 проверка вам на сайт предет
LMI_PREREQUEST=1
LMI_PAYMENT_AMOUNT=1.0
LMI_PAYMENT_NO=1
LMI_PAYEE_PURSE=R397656178472
LMI_MODE=1
LMI_PAYER_WM=809399319852
FIELD_1=VALUE_1
FIELD_2=VALUE_2
|
если у вас стоит 2 проверка вам придет
LMI_PAYMENT_AMOUNT=1.0
LMI_PAYMENT_NO=1
LMI_PAYEE_PURSE=R397656178472
LMI_MODE=1
LMI_SYS_INVS_NO=281
LMI_SYS_TRANS_NO=558
LMI_PAYER_PURSE=R397656178472
LMI_PAYER_WM=809399319852
LMI_SYS_TRANS_DATE=20020314 14:01:14
LMI_HASH=114128B8AEFD8CAA76D3CF75B9AEBC17
FIELD_1=VALUE_1
FIELD_2=VALUE_2
|
эти данные можно отправить и на свой ящик указав его в настройках управления на ВМ
и вот что вам придет после оплаты
LMI_PAYMENT_NO=1
LMI_SYS_INVS_NO=281
LMI_SYS_TRANS_NO=558
LMI_SYS_TRANS_DATE=20020314 14:01:14
FIELD_1=VALUE_1
FIELD_2=VALUE_2
|
каждую передачу вы настраиваете в настройках на какой адрес сайта передавать.
Все эти примеры из инструкции.
Вы скажите конкретно, что тут не понятно, как еще надо обьяснить ?
Пожалуйста прочитайте внимательно инструкцию, и скажите конкретно, что вам там не понятно.
Я просто не в состояние ее всю тут переписывать. | |
|
|
|
|
|
|
|
для: Valeri
(24.03.2005 в 01:37)
| | Да всё понятно уже с этим. Спасибо. Кстате, Valeri, Вы можете объяснить примерно как устроен "Баланс" пользователя? Ну вот как в САР? Или ещё где... | |
|
|
|
|
|
|
|
для: evgen_17
(24.03.2005 в 12:09)
| | врпрос совершенно не понятен.
В коком смысле как устроен ? Как туда ложатся деньги, или как начисляются за проделаннаю работу, как переводятся с одного акка на другой ?
В каждом случае все по разному.
Более конкретно поставте вопрос. | |
|
|
|
|
|
|
|
для: Valeri
(24.03.2005 в 12:46)
| | Valeri, если можно, то объясните всё по порядку... А то я вообще не знаю что к чему... Хотя бы кратко...
P.S. В окне, допустим, можно будет рекламупоказывать... Но это пока только наброски... Дело моё вобщем... Но спасибо за совет. | |
|
|
|
|
|
|
|
для: evgen_17
(24.03.2005 в 19:35)
| | это другая тема, так кратко не расскажешь, а Хеопс опять будет ругаться, что все в одну кучу валится. Создавайте отдельную тему по этому вопросу.
И еще один моментик по оплате. Подумайте о простой ещи, вы отправляете пользователя оплачивать на сайт ВМ и в то же время отправляете сумму в другой скрипт который заносит эту сумму на баланс пользователя, а он взял и передумал платить, а сумма уже у него на балансе !!!
Я бы с удовольствием поработал с таки сайтом :)) | |
|
|
|
|
|
|
|
для: Valeri
(24.03.2005 в 19:49)
| | Я кстате об этом уже подумал... Мда... Не очень-то получается... Ну, хорошо, такой вариант, буду использовать для тестирования. | |
|
|
|