无法在返回 url 中获得 paypal post pramenters

Posted

技术标签:

【中文标题】无法在返回 url 中获得 paypal post pramenters【英文标题】:unable to get paypal post pramenters in the return url 【发布时间】:2012-12-12 08:23:50 【问题描述】:

我有一个代码用于将一些自定义变量传递给 PayPal,这些变量是在返回页面中收集的,但是在尝试获取这些值时它不起作用

我有一个这样的 PayPal 表格:

<form target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="image" src="submit.png" name="submit" />
<input type="hidden" name="add" value="1"/>
<input type="hidden" name="custom" value="IP"/>
<input type="hidden" name="cmd" value="_cart"/>
<input type="hidden" name="business" value=""/>
<input type="hidden" name="item_name" value=""/>
<input type="hidden" name="item_number" value=""/>
<input type="hidden" name="amount" value=""/>
<input type="hidden" name="page_style" value=""/>
<input type="hidden" name="no_shipping" value="1"/>
<input type="hidden" name="return" value="index.php?action=success"/>
<input type="hidden" name="notify_url" value="index.php?action=ipn"/>
<input type="hidden" name="cancel_return" value=""/>
<input type="hidden" name="rm" value="2"/>
<input type="hidden" name="cn" value="Additional Information"/>
<input type="hidden" name="currency_code" value="AUD"/>
<input type="hidden" name="bn" value="PP-ShopCartBF"/>
</form>

付款后我成功返回网址。我现在只是想打印 POST 变量,它没有给我任何值。我尝试过启用和禁用“自动返回”。在这两种情况下,我都没有得到价值。请帮助我,提前谢谢。

【问题讨论】:

您是否尝试使用正确的 URL 或您的“本地主机”服务器? 我正在使用以 http:// 开头的正确网址 如果“这些是在返回页面中收集的”,“不工作”是什么意思? 【参考方案1】:

paypal 将异步(直接)联系“notify_url”,而您与此交易无关。因此,您永远不会在浏览器中看到任何结果。您应该在脚本中使用某种登录来查看实际发送的内容。检查你的网络服务器的访问日志,看看 paypal 是否真的在联系你的脚本(并确保它不是你正在尝试的“本地主机”)

【讨论】:

我可以获取 notify_url 中的值,但我需要在返回 url 中获取相同的值。 不能,返回url是静态定义的。如果您需要将表单变量同时发送到贝宝和您的本地脚本,那么在发布到贝宝之前,请考虑使用 javascript 收集它们并单独发布它们 返回 URL 被指定为一个 html 变量,而不是静态的,并且 rm=2 应该将所有传入的 POST 变量发回给它。请参阅 IPN 手册。【参考方案2】:

如果我没记错的话,只有交易 ID 会被发送回 return_url。 notify_url 也接收该 ID。从那里你应该能够沟通两个页面来满足你的需求。

【讨论】:

我无法获取任何值,当我在页面中使用 print_r($_POST) 时,它返回给我 Array () 抱歉,如果我们启用 PDT,我们将在返回 url 中获取交易 ID,之后我们可以使用 PDT 来检索详细信息,我已按照 cms.paypal.com/uk/cgi-bin/… 上的说明进行操作,它对我来说很好.谢谢大家。 rm=2 被指定为将所有传入的 POST 变量发布回返回 URL。请参阅 IPN 手册。

以上是关于无法在返回 url 中获得 paypal post pramenters的主要内容,如果未能解决你的问题,请参考以下文章

在 PHP 中的 PayPal 中返回 URL

PayPal 支付标准从移动设备返回 GET 而不是 POST,因此无法验证记录支付

Paypal标准按钮不返回事务变量

PayPal(标准)订阅按钮返回 URL 中 Auth 的含义?

Paypal Buy Now IPN 在 POST vars 中返回空 item_number

Paypal 返回 URL 未正确触发