我正在创建一个paypal捐赠交易。其他一切工作正常,但我无法获得返回网址以获取参数:
return=http://example.com
工作正常,但是:
return=http://example.com?action_upon_return=complete
只是被忽略,而是默认为PayPal页面。
PayPal文档明确表示您可以:
如果您想使用查询字符串传递自己的自定义参数,例如return = http://yoursite.com/somescript.php?name=value,请注意PayPal会生成HTML表单,提示买家点击“提交”按钮以转到您的成功页面
here:
例如,您可能希望将付款人重定向到您网站上特定于该人的网址,可能包含会话ID或其他与交易相关的数据。
但是我无法让它发挥作用。
我已经尝试了所有三个rm
设置,但它并没有改变一件事。
我已尝试使用自动返回开启和关闭。
此功能现在已损坏,或者我有什么遗漏?
答案 0 :(得分:0)
我从未真正尝试使用返回网址传递参数。
你可以做到的一种方式:
你可以用它做一些不同的事情。如果您正在检查他们是否已完成捐赠,以便您可以显示已完成/感谢页面,那么您只需检查该会话变量是否存在。
因此,在返回页面上,检查是否设置了会话变量。如果已设置,请执行某些操作。如果用户导航回返回页面,它仍将显示感谢信息(假设会话变量仍然设置)。请记住在捐赠过程开始时取消设置此会话变量,以便在尝试再次捐赠时不会成为问题。
<?php
session_start();
//Set this once the transaction/donation is completed.
$_SESSION['complete'] = "something"; //Transaction ID/True/Some other data.
//This would be on the return page.
//Check if it is set, or the value of the variable depending on your needs.
if (isset($_SESSION['complete'])){
echo "Thank you";
//If you still have the transaction variables set,
//this is where you could use it to display something.
}
?>
我个人有一个简单的付款确认页面,只显示交易ID。由于我完成了会话事务变量(将它们放在数据库中)后,我的完整变量可以保存事务ID。如果已设置,则显示页面。如果没有,他们还没有完成任何交易,我们可以重定向或显示特定的内容。