【发布时间】:2017-08-13 12:18:31
【问题描述】:
我已设置付款(使用 php),因此当客户返回 success.php 文件时(在 Paypal 上使用 IPN 侦听器进行付款处理后),他们将被添加到带有新会员编号的数据库中,这也是在success.php 文件中生成。如果客户以访客身份付款,则该过程运行良好,他们将按原样返回到 success.php 页面。但是,如果客户登录到 paypal 而不是以访客身份付款,他们将被重定向到 Paypal 用户帐户页面,而不是返回到我网站上的 success.php 页面。这意味着已经付款,但他们的会员号没有创建或添加到数据库中。
有没有办法强制所有客户返回我的成功页面,或者是否应该将创建新成员的代码添加到 ipn 侦听器 (ipn.php) 文件中,这样即使他们不回来也没关系到成功页面?
这是我在结帐页面中用于设置返回 url 的代码。
<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_name" value="<?php echo $item_name; ?>">
<input type="hidden" name="item_number" value="<?php echo $item_number; ?>">
<input type="hidden" name="amount" value="<?php echo $price; ?>">
<input type="hidden" name="currency_code" value="GBP">
<!-- Specify URLs -->
<input type='hidden' name='cancel_return' value='http://example.com/payment-cancelled'>
<input type='hidden' name='return' value='http://example.com/thanks-for-joining/'>
<!-- Display the payment button. -->
<input type="submit" name="submit" class="button" value="Pay Now">
</form>
我应该补充一点,到目前为止我只在沙盒模式下测试过这个,所以如果有人知道这是否只是沙盒问题,请告诉我。
更新:进一步的测试表明,返回 url 也不再适用于客人结帐。自从沙盒支付通过新的支付页面(附截图)后,这种情况才开始发生。
paypal是否改变了请求返回url的方式?
【问题讨论】:
标签: php paypal paypal-ipn