Ребята У меня проблема с проверкой платежей sdk, когда платеж прошел успешно, sdk перенаправляет плательщика на этот URL https://mydomain/success?s=true&t=1539681025&paymentId=PAYID-LPC2WAY3PU971582P691553Y&token=EC-2R425444M1727284U&PayerID=HEZISY93F
. На этой странице я проверяю идентификатор платежа с этим кодом
# page success.php
# payment params
$paymentId = (isset($_GET['paymentId'])) ? trim(filter_var($_GET['paymentId'], FILTER_SANITIZE_STRING)) : null;
$token = (isset($_GET['token'])) ? trim(filter_var($_GET['token'], FILTER_SANITIZE_STRING)) : null;
$payerId = (isset($_GET['PayerID'])) ? trim(filter_var($_GET['PayerID'], FILTER_SANITIZE_STRING)) : null;
# include the paypal-sdk
$payment = \PayPal\Api\Payment::get($paymentId, $apiContext);
$execute = new \PayPal\Api\PaymentExecution();
$execute->setPayerId($payerId);
# payment checker
try {
$result = $payment->execute($execute, $apiContext);
} catch (Exception $e) {
header("Location: $url");
die();
}
echo 'payment was paid successfully';
# my $apiContext config / paypal-sdk config
$apiContext = new \PayPal\Rest\ApiContext(
new \PayPal\Auth\OAuthTokenCredential(
'###',
'###'
)
);
$apiContext->setConfig(
array(
'mode' => 'live',
'log.LogEnabled' => true,
'log.FileName' => 'PayPal.log',
'log.LogLevel' => 'INFO', // PLEASE USE `INFO` LEVEL FOR LOGGING IN LIVE ENVIRONMENTS : DEBUG
)
);
когда я попробовал этот код в песочнице, я не могу обновить страницу успеха после успешной оплаты, программа проверки перенаправила меня на мою домашнюю страницу и все в порядке.
моя проблема в том, что когда я пробую его с живым конфигом, после перенаправленияДля того, чтобы succes.php и платеж были оплачены, я могу обновить страницу success.php, чтобы добавить несколько платежей в мою базу данных вместо одного.
как я могу сделать это после оплаты, и я пытаюсь обновить страницуsdk перенаправить меня на мою домашнюю страницу?