我正在尝试添加一个 PayPal“立即付款”类型的按钮,它会重定向用户进行付款。但在这之后,我的数据库和程序如何知道支付是否成功,以及支付了哪些东西?
我需要 PayPal 获取一个简单的 id 变量,并仅在付款发生后将其返回到指定页面。我认为如果 PayPal 可以简单地保存我的“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");
}
?>
在 PayPal,在按钮创建页面上,在“高级功能”下,它看起来允许我键入一个变量以返回到指定的 URL,但即使我让它工作,我也不认为硬编码的“$ paid = true"就足够了。
最佳答案
看起来“自定义”直通变量可能会做到这一点
https://developer.paypal.com/docs/classic/paypal-payments-standard/integration-guide/formbasics/
关于php - Paypal 按钮 : How to return a specified value when a payment is successful?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40411882/