0

我正在以 Paypal 形式编写一个 php 脚本。我正在使用 $testUrl 变量发送返回 url,该变量将在成功付款后起作用,但不会重定向到该 url。

    <form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
   <select name="amount">
      <option value="10">10 SEK</option>
      <option value="20">20 SEK</option>
      <option value="30">30 SEK</option>
   </select>
    <?php $testUrl= "http://www.google.com"; ?> 
     <input type="hidden" name="cmd" value="_s-xclick" />
     <input type="hidden" name="hosted_button_id" value="3FWC3TJEYANK4" />
     <input type="image"  src="https://www.sandbox.paypal.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!" />
     <img alt="" border="0" src="https://www.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1" />
     <input type="hidden" name="notify_url" value="http://beeurban.ayond.com/wp-content/payment/ipn.php" />
     <input type="hidden" name="currency_code" value="SEK" />
     <input type="hidden" name="return" value="<?php echo $testUrl ; ?>" />  
   </form>
4

3 回答 3

3

需要在您的贝宝帐户中激活自动退货选项。

请参见此处:设置 PayPal 退货 URL 并使其自动退货?

请看下面@andrew 的回答:https ://stackoverflow.com/a/13468873/1722914

于 2012-11-20T07:55:27.277 回答
2

您的问题是您使用的是托管按钮。当您使用托管按钮时,您不能像这样向按钮代码添加其他字段。一切都必须在您的 PayPal 帐户的按钮管理器中进行配置。从我所看到的情况来看,您的 notify_url 可能也不起作用,因为这也必须在按钮管理器中进行设置……除非您在即时付款通知首选项下的个人资料中设置了相同的通知 URL。然后这将生效,但你在这里传递的内容将被忽略。

在按钮管理器的第 3 步 - 自定义高级功能中,有一个“在客户完成结帐时将其带到此 URL”选项,您需要启用该选项并在此处填写您的返回 URL。您还将在“高级变量”下看到您可以在那里添加 notify_url。

不幸的是,您不能像尝试对返回 URL 的 PHP 变量那样使用动态值。如果返回 URL 可以根据顺序更改,则您需要使用非托管按钮。

为此,在第 2 步 - 跟踪库存、利润和损失中,您需要取消选中 PayPal 框上的保存按钮。这将为您提供包含更多字段的不同 HTML 代码,然后您可以为 return、notify_url 等添加自己的值。

于 2012-11-20T08:03:09.233 回答
0

http://jream.com/public/lab/paypal_ipn.class.php 这可能有助于指导您

于 2012-11-20T08:08:12.067 回答