PayPal IPN和更新数据库
我了解IPN的工作原理,以及发送信息、验证等的基本理念。但就我而言,我无法让它工作 这就是我想做的 用户选择要购买的产品的某个部分,一旦他们单击它,他们就会链接到paypal按钮,我在其中添加了两个文本字段。第一个是用户ID,第二个是所选部件的名称,这两个部件的值都会自动添加。一切正常 然后他们按Buy Now并填写他们的信用卡详细信息,信用卡将被购买并重定向到成功页面 但是,我需要它,这样它会更新我数据库中的他们的个人资料,以显示他们购买了该产品 我知道,使用PayPal的IPN,我可以将信息发送到我网站上的一个页面进行检查,如果付款完成,则采取任何必要的行动 我已经尝试了贝宝网站本身的脚本,我没有得到任何回应。有人能给我一个非常简单的方法来实现我的目标吗?因为那里的每一个教程都过于复杂或不起作用,而且这些例子对我一点帮助都没有,他们和你交谈时,好像你应该知道它是如何完成的PayPal IPN和更新数据库,paypal,paypal-ipn,Paypal,Paypal Ipn,我了解IPN的工作原理,以及发送信息、验证等的基本理念。但就我而言,我无法让它工作 这就是我想做的 用户选择要购买的产品的某个部分,一旦他们单击它,他们就会链接到paypal按钮,我在其中添加了两个文本字段。第一个是用户ID,第二个是所选部件的名称,这两个部件的值都会自动添加。一切正常 然后他们按Buy Now并填写他们的信用卡详细信息,信用卡将被购买并重定向到成功页面 但是,我需要它,这样它会更新我数据库中的他们的个人资料,以显示他们购买了该产品 我知道,使用PayPal的IPN,我可以将信息
我甚至读了整个PDF文件,但我仍然不知道如何让它工作。有什么帮助吗?这取决于用户在数据库中的存储方式
Users: ID, email, etc.. etc..
Transactions: ID, emailofUser, invoiceID, Success/Fail(bool)
在将数据发送到PayPal之前,您希望将信息存储到数据库——“嘿,这家伙是被发送到PayPal购买的”
然后,当您希望确保项目实际购买时,IPN就会出现。你不想让某人仅仅因为被发送到PayPal而获得购买物品的好处,你要确保他们实际完成了付款。离开IPN变量,您可以很容易地使用“invoice”变量(只要您在将数据发送到PayPal时适当地定义它)
假设您将买家发送到PayPal,他完成结账,您的脚本将收到一条IPN消息。您将需要执行以下操作:
if ($_POST['payment_status'] == 'completed')
{
//update whatever information you need to
}
else
{
//something else happened with this transaction, put a flag on it for review by
//an admin
}
我也在努力实现同样的目标,+1。非常感谢!不幸的是,我最终使用了一种不同的付款方式,所以我无法实际测试它,但根据您的指示,它似乎非常容易理解,非常详细,我不明白为什么它不起作用。我相信我将来会需要它的。