Здравствуйте, гуру.
Хочу подключить онлайн оплату через ЯндексДеньги с помощью формы. У многих похожих систем есть аналогичные формы для быстрого подключения.
Простая форма передачи данных:
<form method="POST" action="https://money.yandex.ru/quickpay/confirm.xml">
<input type="hidden" name="receiver" value="41001xxxxxxxxxxxx">
<input type="hidden" name="formcomment" value="Проект «Железный человек»: реактор холодного ядерного синтеза">
<input type="hidden" name="short-dest" value="Проект «Железный человек»: реактор холодного ядерного синтеза">
<input type="hidden" name="label" value="">
<input type="hidden" name="quickpay-form" value="donate">
<input type="hidden" name="targets" value="транзакция {order_id}">
<input type="hidden" name="sum" value="4568.25" data-type="number">
<input type="hidden" name="comment" value="Хотелось бы дистанционного управления.">
<input type="hidden" name="need-fio" value="true">
<input type="hidden" name="need-email" value="true">
<input type="hidden" name="need-phone" value="false">
<input type="hidden" name="need-address" value="false">
<label><input type="radio" name="paymentType" value="PC">Яндекс.Деньгами</label>
<label><input type="radio" name="paymentType" value="AC">Банковской картой</label>
<input type="submit" value="Перевести">
</form>
Через поле
<input type="hidden" name="label" value="">
можно передать нужные данные из формы, для последующего использования (я пересылаю массив).
Т.е. после успешной оплаты, яндекс шлет ответ, на указанную мной php страницу, где я получаю данные из
$name = $_POST['label'];
и могу что-то с ними сделать (отправить письмо администратору, записать в базу данных и т.д).
Дело в том, что форма у меня большая (массив получается символов на 500), а в label можно записать данные только до 64 символов.
Мне кажется, что есть вариант, без прогонки данных, а как-то временно сохранить их у себя и только после ответа яндекса, что платеж прошел, использовать эти данные. А если платеж отменен, то просто их затереть.
Сначала смотрел в сторону localStorage или Cookies, но вроде тут это не прокатит.
Теперь думаю, что единственный вариант, это при отправки формы, записывать данные в базу mysql, а при получении ответа, что платеж прошел, использовать эти данные. Как-то так.
Прошу помочь разобраться с этим вопросом. Надеюсь все описал ясно. Спасибо Вам.