Всем привет. Делаю я тут одну вещь с пополнением через веб мани мерчант. Но одни проблемы от него. Уже второй скрипт с ним делаю , и одна и таже проблема , причем эти два скрипта на одном хосте тестил. Мне кажеться что это хостинг глючит , ведь сначало данные идут в вебмани , потом запросом пост ко мне на сайт. Так вот проблема:
1) У меня есть два скрытых поля , которые передаются в мерчант , когда я их получаю в форме оповещения о платеже , у меня то работает один , то не работает и т.д , так вот у меня щас такой прикол в форме оповещения о платеже , один из пост запросов не виден , а в форме где показывает успешное выполнение эта переменная работает. В чём дело быть может? если надо скину код(п.с знаю что тут нет экстрасенсов , но может у кого также было)
Записывай весь массив $_POST в файл при каждом запросе.
Увидишь какие и где переменные есть.
А вообще 31го такие дела не делаются))
С наступающим!
Спасибо. Тебя Тоже =)
Мне больше делать просто нечего , вот и пишу =)
Вообщем веб мани отправляет на сайт мои поля из формы не все , или хостинг принимает не все. яхз... щас на другом хосте пробывать буду , пока домен перенаправил. отпишусь как попробую.
добавлено спустя 14 часов 55 минут:
Вообщем, дело не в хостинге , на другом тоже самое. Сделал как и написали , записывал все ключи и значения $_POST
Итак... вот форма, которая отправляется серверу веб мани:
<form method="POST" action="https://merchant.webmoney.ru/lmi/payment.asp?at=authtype_8">
<input type="hidden" name="LMI_PAYMENT_AMOUNT" value="12.36" />
<input type="hidden" name="LMI_PAYMENT_DESC_BASE64" value="0J/QvtC/0L7Qu9C90LXQvdC40Y8g0YHRh9GR0YLQsCDQsNC60LrQsNGD0L3RgtCwINC90LAg0YHQsNC50YLQtSB2cG9jY3V1LnJ1" />
<input type="hidden" name="LMI_PAYMENT_NO" value="9" />
<input type="hidden" name="LMI_PAYEE_PURSE" value="R108232283253" />
<input type="hidden" name="LMI_SIM_MODE" value="0" />
<input type="hidden" name="userId" value="MQ==" />
<input type="hidden" name="summa" value="MTI=" />
<input type="submit" value="Оплата 12.36 WMR" />
Вот что записалось в базе:
INSERT INTO `top33_log` (`data`, `id`, `log`) VALUES
('1 Янв 2012 - 12:35:3', 29, 'LMI_PAYMENT_DESC - '),
('1 Янв 2012 - 12:35:3', 28, 'LMI_HASH - B825F226F75FDFB3BF308741DAFE1BA9'),
('1 Янв 2012 - 12:35:3', 27, 'LMI_SYS_TRANS_DATE - 20120101 13:35:39'),
('1 Янв 2012 - 12:35:3', 26, 'LMI_SYS_TRANS_NO - 119'),
('1 Янв 2012 - 12:35:3', 25, 'LMI_SYS_INVS_NO - 645'),
('1 Янв 2012 - 12:35:3', 24, 'LMI_PAYER_PURSE - R108232283253'),
('1 Янв 2012 - 12:35:3', 23, 'LMI_PAYER_WM - 191785653251'),
('1 Янв 2012 - 12:35:3', 22, 'LMI_PAYMENT_NO - 9'),
('1 Янв 2012 - 12:35:3', 21, 'LMI_PAYEE_PURSE - R108232283253'),
('1 Янв 2012 - 12:35:3', 20, 'LMI_PAYMENT_AMOUNT - 12.36'),
('1 Янв 2012 - 12:35:3', 19, 'LMI_MODE - 1'),
('1 Янв 2012 - 12:35:3', 30, 'LMI_LANG - ru-RU'),
('1 Янв 2012 - 12:35:3', 31, 'summa - MTI'),
('1 Янв 2012 - 12:35:3', 32, '90909 - userId');
добавлено спустя 52 секунды:
P.S:
foreach($_POST as $key=>$value){
$mysqli->query("INSERT INTO `top33_log` (`data` ,`id` ,`log` )VALUES ('".data(time())."', '' , '".$key." - ".$value."')");
}
добавлено спустя 6 минут:
Если записать $_POST['userId'] и $_POST['summa'] то записывается только сумма платежа.
НО в форме оповещения об успешном выполнении платежа обе переменные работают.
да, интересно....
Я не совсем понял что за значения у тебя тут
<input type="hidden" name="userId" value="MQ==" />
<input type="hidden" name="summa" value="MTI=" />
MQ== и MTI=
Кажется там должны быть числа?
И еще попробуй переименоват переменную userId на iduser... Хз, может вебмани что свое передает, а потом чистит свои пост данные)
добавлено спустя 3 минуты:
Вообще при использовании сторонних сервисов всегда лучше помечать свои переменные каким-нибудь префиксом
domen_userId
domen_summa
Может у вебмани там какая-нибудь суперинтелектуальная фильтрация
добавлено спустя 37 секунд:
....и ключ userId в черном списке)
MQ== и MTI=
это числа закодированные в base64
Всё я сделал короче , убрал кодировку это, смысла нет числа кодировать.