Перенаправление на платежный шлюз вместе с почтовыми данными с помощью cURL (или любого другого решения на стороне сервера PHP)


Я играл с cURL, пытаясь передать данные POST на страницу платежного шлюза страницы...

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

Мне удается передать данные POST, но результирующая страница загружается в моем домене (вместо того, чтобы перенаправлять пользователя на платежный шлюз).

$connection = curl_init("https://paymentgateway.com/script");
curl_setopt($connection, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($connection, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($connection, CURLOPT_POST, 1);
curl_setopt($connection, CURLOPT_POSTFIELDS, $postdata);
curl_exec($connection);
curl_close($connection);

Как это должно быть готово?

Author: jfanals, 2011-01-18

1 answers

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

Что вам, вероятно, нужно сделать, это вывести соответствующую форму с помощью PHP на (очень) минимальную HTML-страницу с автоматическим отправлением формы с помощью загружается.

Например, если в вашей форме был идентификатор "форма проверки", вы могли бы использовать:

<body onload="document.getElementById(\'checkoutform\').submit();">

Это, конечно, довольно скудно. (И все же, к сожалению, неизбежно.)

 5
Author: John Parker, 2011-01-17 22:04:25