как подключиться к платежному шлюзу - PullRequest
0 голосов
/ 15 мая 2018

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

<form name="payment" method="post" action="example.com/cPage">
<input name="amount" id="amount">
<button type="submit">pay</button>
<input name="submit" type="hidden" value="1">

Я изменяю действие на свою страницу оплаты: action="example.com/.../mpage/send.php" и mpage - это API, который я получаю из банка и у которого есть send.php, get.php и function.php проблема в том, что когда я изменяю действие на работу шлюза mpage, но не отображается в cms скрипта, а только в действии по умолчанию, платежные деньги отображаются в профиле клиента в cms.

function.php:

function send($url,$api,$amount,$redirect){
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
 curl_setopt($ch,CURLOPT_POSTFIELDS,"api=$api&amount=$amount&redirect=$redirect");
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    $res = curl_exec($ch);
    curl_close($ch);
    return $res;
}
function get($url,$api,$trans_id,$id_get){
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
  curl_setopt($ch,CURLOPT_POSTFIELDS,"api=$api&id_get=$id_get&trans_id=$trans_id");
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    $res = curl_exec($ch);
    curl_close($ch);
    return $res;
}

send.php:

    include_once("function.php");
    $url = 'http://bankwebsite.com/gateway-send'; 
    $api = '*****';
    $amount = $_POST['amount'];
    $redirect = 'http://example.com/.../mpage/send.php';
    $result = send($url,$api,$amount,$redirect); 
    if($result > 0 && is_numeric($result))
    {
        $go = "http://bankwebsite/gateway-$result"; 
        header("Location: $go");
    } else {
    print_r($result);
}

get.php:

include_once("function.php");
$url = 'http://bankwebsite/gateway-result-second'; 
$api = '********';
$trans_id = $_POST['trans_id']; 
$id_get = $_POST['id_get'];
$result = get($url,$api,$trans_id,$id_get); 
if($result == 1)
{#success msg
    }
else
{#failed msg
    }

Теперь я добавляю функцию newSend в function.php:

    function newSend($url,$amount,$submit){
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_POSTFIELDS,"amount=$amount&submit=$submit");
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    $res = curl_exec($ch);
    curl_close($ch);
    return $res;

и этот код вместо #success msg в get.php:

$url = "http://example.com/cPage";
newSend($url,$amount,1);

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

...