1
我正在嘗試添加一個PayPal「立即付款」類型的按鈕,該按鈕重定向用戶進行付款。但是在完成之後,我的數據庫和程序如何知道付款是否成功以及哪些東西已付款?PayPal按鈕:支付成功後如何返回指定值?
我需要貝寶採取一個簡單的id變量,並且只有在付款發生後纔將其返回給指定頁面。我認爲如果貝寶可以簡單地持有我的「item_id」變量,那就足夠了。
在我的付款頁面:
<?php
$item_id = $item["id"];
?>
<td>
<!-- code from PayPal: -->
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="RZ3N8DZLEYN5L">
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_paynow_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>
</td>
在payment_complete頁:
<?php
if(isset($item_id)){
$query = "UPDATE items SET status = 'paid' WHERE id = {$item_id}";
$result = mysqli_query($db, $query);
redirect_to("paywalled_page.php");
}else{
redirect_to("payments.php");
}
?>
在貝寶,該按鈕創建頁面上,在「高級功能」,它看起來像它讓我輸入一個變量返回到指定的URL,但即使我得到這個工作,我不認爲硬編碼「$ paid = true」就足夠了。
你應該看看貝寶IPN,這是不是。 https://developer.paypal.com/docs/classic/products/instant-payment-notification/ – FluxCoder