2015-10-05 4 views
2

Я пытаюсь получить ссылку для оплаты, но все, что я пытаюсь сделать, либо разбивает страницу (белый экран), либо меня на странице XML.Создайте платежную ссылку, используя cURL и php

Поскольку я не совсем понимаю, код, это объяснение, которое я получил с ним:

Код запроса: Код

$ curl -X GET "https://www.mollie.com/xml/ideal?a=create-link&partnerid=[partnerid]&amount=[amount]&description=[omschrijving]&profile_key=[profiel key]" 

Ответ:

HTTP/1.1 200 OK 

<?xml version="1.0" ?> 
<response> 
    <link> 
     <URL>https://www.mollie.com/pay/ideal/000000/200_Testorder_15/43bd941819a5f5db83adf97d08da508805bce051</URL> 
     <message>Your iDEAL-link has been successfully setup. Your customer should visit the given URL to make the payment.</message> 
    </link> 
</response> 

Мой текущий код:

Если я поместил код запроса, как показано ниже в верхней части страницы, страница мгновенно разрывается. Идея состоит в том, что код должен возвращать содержимое из xml в строке 16, а не ссылку на xml. Я не добавляю iid прямо к описанию, или я делаю что-то еще неправильно?

<?php 
    $iid = $_POST['infinid']; 
    $email = $_POST['email']; 
    $orderid = $date . '-' . $id; 

    if(isset($_POST['name'])){ 

     echo "<table><tr><td>Name</td><td>"; 
     echo $_POST['name']; 
     echo "</td></tr><tr><td>InfinTV ID</td><td>"; 
     echo $_POST['infinid']; 
     echo "</td></tr><tr><td>Email adres</td><td>"; 
     echo $_POST['email']; 
     echo "</td></tr><tr><td colspan=\"2\">If the information above is correct, please proceed to payment</td></tr><tr><td colspan=\"2\">"; 
     echo "<a href=\""; 
     echo "https://www.mollie.com/xml/ideal?a=create-link&partnerid=2006811&amount=1000&description=" . $iid . "&profile_key=3721B6A4"; 
     echo "\">Pay Now</a>"; 
     echo "</td></tr></table>"; 
     } 

    else{ 
     echo '<form method="post" action=""> 
     <table> 
     <tr><td colspan="2">Please fill in the form below to renew your subscription</td></tr> 
     <tr><td>Name</td><td><input type="text" name="name" /></td></tr> 
     <tr><td>InfinTV ID</td><td><input type="text" name="infinid" /></td></tr> 
     <tr><td>Email</td><td><input type="text" name="email" /></td></tr> 
     <tr><td colspan="2"><input type="submit" value="Proceed to checkout" /></td></tr> 
     </table> 
     '; 

    } 
?> 

ответ

0

Кажется, что Mollie требует нескольких шагов для создания заказа. У вас есть первый шаг, который должен сгенерировать запрос к Молли. Вместо отправки браузера непосредственно на номер www.mollie.com/xml/ideal... вам необходимо отправить пользователю форму на ваш сервер. Затем вы отправляете запрос GET сервера на сервер с использованием cURL до www.mollie.com/xml/ideal..., и вы получите ответ XML. Разберите этот ответ, используя XML Parser, чтобы получить элемент response/link/URL. Отправьте браузер пользователя на URL-адрес, найденный там, используя перенаправление 302, установив заголовок Location в ответ на браузер.

+0

Большое спасибо за ваш ответ Брайан. Похоже, мне нужно будет нанять программиста. Это намного выше моего набора навыков :) –