Paypal Integration PDT Перенаправление URL с параметрами GET

Привет, вот мой код, который я хочу интегрировать в систему, которую собираюсь разработать.

    <?php
session_start();

$paypalID = '[email protected]'; //Business Email

$paypalURL = 'https://www.sandbox.paypal.com/cgi-bin/webscr'; //Test PayPal API URL


?>
<h1>Choose your Plan</h1>
<h3>Month-to-month : $20.00 USD - monthly</h3>
<form action="<?php echo $paypalURL; ?>" method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business" value="<?php echo $paypalID; ?>">

<!-- Specify a Buy Now button. -->
<input type="hidden" name="cmd" value="_xclick">

<!-- Specify details about the item that buyers will purchase. -->

<input type="hidden" name="item_number" value="month-to-month">
<input type="hidden" name="amount" value="20">
<input type="hidden" name="currency_code" value="USD">

<!-- Specify URLs -->
<input type='hidden' name='cancel_return' value='http://xxxxxxxx/payment.php'>
<input type='hidden' name='return' value='http://xxxxxxxx/insertpayment.php'>
<input type='hidden' name='notify_url' value='http://xxxxxxxx/payment.php'>

<!-- Display the payment button. -->
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>

<h3>Yearly : $50.00 USD - yearly</h3>
<form action="<?php echo $paypalURL; ?>" method="post">
<!-- Identify your business so that you can collect the payments. -->
<input type="hidden" name="business" value="<?php echo $paypalID; ?>">

<!-- Specify a Buy Now button. -->
<input type="hidden" name="cmd" value="_xclick">

<!-- Specify details about the item that buyers will purchase. -->

<input type="hidden" name="item_number" value="yearly">
<input type="hidden" name="amount" value="50">
<input type="hidden" name="currency_code" value="USD">

<!-- Specify URLs -->
<input type='hidden' name='cancel_return' value='http://xxxxxxxx/payment.php'>
<input type='hidden' name='return' value='http://xxxxxxxx/insertpayment.php'>
<input type='hidden' name='notify_url' value='http://xxxxxxxx/payment.php'>

<!-- Display the payment button. -->
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>

Как только я разрабатываю решение, несмотря на то, что я интегрировал его с моей существующей учетной записью PayPal, оно не выдает никаких параметров get, которые мне действительно необходимы для их добавления в базу данных.
Однако один из моих друзей попробовал, чтобы он работал правильно (localhost) с 10-секундным автоматическим перенаправлением в своем перенаправлении платежного шлюза на insertpayment.php, который также генерирует параметры получения (упоминается в insertpayment.php). То же самое сработало, когда я добавил его тестовое письмо в качестве идентификатора PayPal.

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

Это код для insertpayment.php

    <?php

session_start();
$payment_plan = $_GET['item_number'];
$txn_id = $_GET['tx'];
$payment_gross = $_GET['amt'];
$currency_code = $_GET['cc'];
$payment_status = $_GET['st'];
$payment_description = $_GET['item_name'];


require_once("./Connection/dbCon.php");
include("./Connection/keys.php");



$PaymentPlan = "";
if($payment_plan=="month-to-month"){
$PaymentPlan = "1";
}
elseif($payment_plan=="yearly")
{
$PaymentPlan = "12";
}else{
$PaymentPlan = "Unknown";
}

$currentDate = date("m/d/Y");

$uname = $_SESSION['uname'];

if(!empty($txn_id)){
//Check if payment data exists with the same TXN ID.
$prevPaymentResult = mysqli_query($conn,"SELECT id FROM payment WHERE txn_id = '".$txn_id."'");

if($prevPaymentResult->num_rows > 0){
$paymentRow = $prevPaymentResult->fetch_assoc();
$last_insert_id = $paymentRow['id'];
}else{
//Insert tansaction data into the database

if (!$insert = mysqli_query($conn,"INSERT INTO payment(paymentDescription,paymentPlan,txn_id,payment_gross,currency_code,payment_status) VALUES('".$payment_description."','".$payment_plan."','".$txn_id."','".$payment_gross."','".$currency_code."','".$payment_status."')"))
{
echo("Error description: " . mysqli_error($conn));
}
if (!$update = mysqli_query($conn,"update userlogin set IsSubscribed='{$IsSubscribed}' , PackageSubscribed='{$PaymentPlan}' where Username='{$uname}' ")){
echo("Error description: " . mysqli_error($conn));
}

}


?>

<h5><span class="alert alert-success"> Your payment has been successful.</span></h5>

<a href="http://localhost/XX/bids.php" class="btn btn-primary">Return To Dashboard</a>
<?php

}else{

?>
<br><br><br>
<h5><span class="alert alert-danger">Your payment has failed.Your Membership has not been upgraded.</span> </h5>
<a href="http://localhost/XX/payment.php" class="btn btn-primary">Return To Dashboard</a>
<br><br><br><br><br><br><br><br><br><br><br>
<?php } ?>

0

Решение

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

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]