我最近试图实现贝宝的IPN到我的网站。 这里是我已经采取了(沙盒)贝宝IPN,缺少POST数据
1步骤:使2个沙箱帐户(买方/卖方)
2:卖家帐户中启用IPN和URL设置为我PayPalIPN.php
PayPalIPN.php是
3:创建一个按钮,该按钮进入购买后success.php
success.php是https://github.com/paypal/ipn-code-samples/blob/master/php/example_usage.php
现在当我现在买的点击,登录到我的沙盒买家帐户,买它,然后按带我回商人,我得到这个错误
Fatal error: Uncaught Exception: Missing POST Data in /home/site/public_html/PayPalIPN.php:60 Stack trace: #0 /home/site/public_html/success.php(7): PaypalIPN->verifyIPN() #1 {main} thrown in /home/site/public_html/PayPalIPN.php on line 60
这是抛出异常的行
if (! count($_POST)) {
throw new Exception("Missing POST Data");
}
我真的很难过这个。在这个问题上,我只看到过一个问题,Paypal的教程没有提到这个错误发生时的错误。我感谢所有帮助
UPDATE
所以好像我是用一些错误的地方的网址。所以现在我在'paypalipn.php'有一个IPN类,另一个名为'success.php'的文件包含了paypalipn.php,并使用IPN类来检查它是否被验证。我已将听众URL设置为success.php,当它被购买时,用户被重定向到'purchased.php'。我遇到的问题是,似乎success.php永远不会被调用。它根本不起作用。我也曾尝试使用
notify_url=https://www.website.com/success.php
它似乎仍然没有得到所谓的设置在立即购买按钮的变量的URL。我真的很困惑我在做什么错...