【问题标题】:Paypal IPN - on storing variablesPaypal IPN - 关于存储变量
【发布时间】:2012-08-24 14:39:34
【问题描述】:

在paypal IPN 系统中,paypal 会使用curl 在您的服务器上使用URL 中的许多参数发出请求。我想知道是否应该将每个键/值存储在数据库中的单独字段中,或者是否应该将整个请求作为字符串存储在单个字段中。

首选或常用的方法是什么?

与我有关的主要事情是,如果以后贝宝决定添加更多变量或弃用旧变量,则需要更改数据库。当您有 item_name#(未知数量的变量)要存储时,将值存储在单独的字段中也会使存储订单数据变得更加困难。

是否有任何理由我应该在我的数据库中为每个 paypal 将返回的变量创建一个单独的字段?

【问题讨论】:

  • 不知道你在问什么,你的 ipn 监听器唯一需要的是“成功”或“失败”,以及一个标识交易的 id。
  • @Dagon 我需要将所有来自贝宝的回复存储在我的自定义购物车中(支付金额、付款人电子邮件、地址等)
  • @Dagon 您如何开具发票?
  • 我在我的网站上记录信息(地址等),然后将它们发送到贝宝付款,我需要从贝宝返回付款成功的确认信息。大多数(我曾经使用过的)开源购物车都是这样工作的。大多数其他支付网关都以这种方式工作——它们处理的只是支付;您将交易细节和您需要的任何用户详细信息存储在您的网站上。
  • 按照@Dagon 建议的方式进行操作,您将避免我遇到的问题 - 客户的电子邮件/送货地址与他们的贝宝电子邮件/帐单地址不同。甚至名字也可能不同(有些是用大学室友卡支付的)

标签: php mysql curl paypal


【解决方案1】:

我会尽可能少地存储信息。不要存储你不需要的东西。另外,我建议为您要存储的每个内容创建字段,因为这样以后,如果 paypal 确实更改了他们的 api,您需要更改的只是数据库和 paypal 之间的映射器,而不是您为每个内容解析的字符串值时间。

【讨论】:

    猜你喜欢
    • 2012-05-26
    • 2012-01-02
    • 2012-12-05
    • 2011-06-21
    • 2012-01-26
    • 1970-01-01
    • 2015-04-13
    • 2014-02-26
    • 2016-03-05
    相关资源
    最近更新 更多