Перенаправление PHP с помощью POST

#c# #php #asp.net #post #redirect

#c# #php #asp.net #Публикация #перенаправление

Вопрос:

Хорошо, итак, я пытаюсь выполнить перенаправление с помощью PHP с идентификатором PaymentID …я не уверен, как это сделать…вот инструкции и даже несколько примеров asp.net код в помощь

Перенаправление на страницу Mercury HostedCheckout URL-адрес Mercury HostedCheckout: Тестовый URL-адрес: https://hc.mercurydev.net/Checkout.aspx

Скрытые поля в HTML-форме отправляются в HostedCheckout

 Field Name   Description                                                          Required
PaymentID    The unique identifier returned by the InitiatePayment web service.   Yes
  

И вот пример кода на C # для asp.net

Пример кода перенаправления Это пример кода, который перенаправит браузер на страницу HostedCheckout Mercury. Это C #-код на стороне сервера, используемый в asp.net щелкните событие, которое создает html-ответ, который перенаправит на Mercury.

 //Set the necessary variables before building html.
string hostedCheckoutURL = ConfigurationManager.AppSettings["HostedCheckoutURL"]; 
string paymentID = this.txtPaymentID.Text;
//Build an html form post to be sent back to the browser. 
//It will redirect the browser to the Mercury HostedCheckout page. 
Response.Clear(); 
Response.Write("<html><head>"); 
Response.Write("</head><body onload="document.frmCheckout.submit()">"); 
Response.Write("<form name="frmCheckout" method="Post" action=""   hostedCheckoutURL   "" >"); 
Response.Write("<input name="PaymentID" type="hidden" value=""   paymentID   "">"); 
Response.Write("</form>"); 
Response.Write("</body></html>"); 
Response.End();
  

В принципе, мне нужно выполнить тот же запрос в PHP … есть идеи

Ответ №1:

Вам нужно include("config.php"); или что-то подобное, чтобы получить $hostedCheckoutURL, но я не знаю, откуда вы получаете PaymentID.

 <?php
//Set the necessary variables before building html.
$hostedCheckoutURL = "https://hc.mercurydev.net/Checkout.aspx"; 
$paymentID = "123456789";
//Build an html form post to be sent back to the browser. 
//It will redirect the browser to the Mercury HostedCheckout page. 
echo("<html><head>"); 
echo("</head><body onload="document.frmCheckout.submit()">"); 
echo("<form name="frmCheckout" method="Post" action="".$hostedCheckoutURL."" >"); 
echo("<input name="PaymentID" type="hidden" value="".$paymentID."">"); 
echo("</form>"); 
echo("</body></html>");
?>
  

Комментарии:

1. У меня есть PaymentID …. создает ли этот запрос форму или он перенаправляет… Я думал, что мне нужно перенаправить… еще раз спасибо

2. неважно, что это сработало отлично… спасибо, но что это doing….is это написание формы или перенаправление, и если его перенаправление, как

3. this.txtPaymentID.Text Я не знаю, что это такое и как вы его настроили, оно перенаправляется на URL, который вы указали в $hostedCheckoutURL , я отредактирую ответ, чтобы сделать его более понятным.

4. Теперь я понимаю… Я пишу форму через php, а затем с помощью onload автоматически отправляю URL, установленный в конфигурации, с данными post PaymentID