Должен ли пользователь вводить какие-либо данные на странице authorize.net или ваша форма содержит всю необходимую информацию?Если вы генерируете всю информацию, то проще всего сделать это с помощью вызова cUrl для authorize.net, передавая данные непосредственно к ним и проверяя возвращаемый код состояния / вывод, чтобы увидеть, был ли он успешным / нет и т. Д.
Если пользователю по-прежнему необходимо вводить платежные данные, используйте следующий метод.
Форма сообщений в /somepage.php
somepage.php запускает его обработку и один раз внизуобработка завершена, добавьте заголовок ("Местоположение: https://www.authorize.net/dopaymenthere");
. Убедитесь, что вы по-прежнему повторяете кнопку" Внести платеж "на этой странице", - на случай, если пользователь сделает что-то необычное, когда он принудительно прекратит перенаправление и т. д.Таким образом, это не похоже на испорченный код, но за несколькими исключениями, которые делают необычные вещи для их браузеров и т. Д., Вы все равно можете изящно обрабатывать их
PS: это будет работать только путем объединения сообщенияпеременные как запросы на получение, при условии, что authorize.net будет обрабатывать запросы на получение как переменные.
действительно простой способ сделать это без использования запроса get с помощью javascript, отправив форму на dom ready ... таким образом, вы можете показать пользователю сообщение о порядке обработки.и отправьте их со встроенной скрытой формой непосредственно на authorize.net на тот случай, если ваша обработка займет больше времени, чем ожидалось и т. д.
В терминах jquery на странице processing.php у вас будет что-то вроде:
echo $form; // HTML form with all it's values required by authorize.net
echo "<h1>Processing your request</h1>";
<script type='text/javascript'>$(document).ready(function(){$('#hiddenformid').submit();});</script>