【问题标题】:How to insert order into database and then redirect to Paypal如何将订单插入数据库,然后重定向到 Paypal
【发布时间】:2012-07-01 18:01:03
【问题描述】:

编辑:

让我重新表述我的问题.. 我正在尝试在重定向到贝宝之前将订单插入 mysql 数据库。现在,我必须分两步完成。按下将重定向到存储订单的另一个页面的按钮,然后重定向到包含 Paypal Checkout 按钮的另一个页面。

paypal 按钮本身就是一个带有隐藏输入的表单。我想知道是否有办法一步到位。 IE。当我按下贝宝按钮时,它会在重定向到贝宝之前将我的订单输入 mysql 数据库。

【问题讨论】:

  • 你能解释一下吗?
  • 会话?数据库?平面文件? XML?任君挑选。
  • 一点帮助都没有。我想我的问题有点模糊。让我在上面重新定位。
  • @GordonM 你真的竭尽全力对这个问题毫无贡献...
  • @KirillFuchs 如果您查看了编辑历史记录,您会注意到问题的原始版本甚至没有提及 OP 如何存储数据。我的评论是对这一事实的讽刺评论。我建议您了解问题编辑历史等功能。

标签: php mysql button paypal e-commerce


【解决方案1】:

是的,您可以发出 header() 来更新 Location:

header('Location: https://www.paypal.com/cgi-bin/webscr?' . http_build_query($vars));

其中$vars 是所有必要的变量:

    $vars = array(
            'cmd' => '_xclick',
            'business' => $paypal_email,
            'lc' => 'GB',
            'item_name' => $item_name,
            'item_number' => $item_number,
            'amount' => number_format($amount, 2),
            'notify_url' => $notify_url,
            'return' => $return_url,
            'currency_code' => 'USD',
            'button_subtype' => 'goods',
            'no_note' => 0,
            'tax_rate' => 0,
    );

这将导致浏览器在没有页面加载的情况下重定向到 PayPal。

【讨论】:

    【解决方案2】:

    在您的选择付款页面中,当点击提交时,将订单保存在您的订单表中,但将状态设置为 0 或未完成。然后,创建一个可用于在 paypal 中返回 url 的另一个文件。你可以称之为confirmation.php。在其中编写一个代码,将状态更新为 1,这意味着付款成功,现在可以处理订单了。

    在你的paypal连接脚本中,设置return url为confirmation.php,这样会执行更新状态。

    差不多了。

    【讨论】:

      猜你喜欢
      • 2013-03-16
      • 2012-08-25
      • 1970-01-01
      • 2012-11-26
      • 1970-01-01
      • 2013-11-16
      • 2017-03-09
      • 2021-12-15
      • 1970-01-01
      相关资源
      最近更新 更多