У меня есть готовый скрипт, который зашифрован и не может получить доступ ко всем кодам. у этого скрипта есть платежный шлюз на странице оплаты - форма с действием на определенную страницу
<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, а также оплата должна быть произведена.
в простом объяснении у меня есть страница оплаты, на которой, когда страница действия в форме отправки по умолчанию, она записывает сумму ввода в профиль клиента. и когда я изменил страницу по умолчанию на api, которую я получаю из банка, перевод денег, но не отображается в cms. Мне нужно отправить значение суммы на две страницы. страница по умолчанию для записи в cms и страница API банка для перевода денег
Хорошо, а что именно вы имеете в виду, говоря «это не работает»? Не работает как? Что происходит является? Вы получаете ошибки? Получаете неожиданный ответ? Какую отладку вы сделали? Какое значение имеет $result в get.php? Какое значение имеет $res в newSend()?






Извините, но я здесь ничего не понимаю.