0

我想获得以前$_SESSION['cart']的 Paypal IPN

我使用的IPN 代码示例。一切正常,脚本$_POST从 Paypal 获取数据。

if (strcmp ($res, "VERIFIED") == 0) {
        $subject = time();
        $to      = 'my@email.com';
        foreach ($_POST as $key => $value) { 
        $body .= "\n$key: $value";
        }
        mail($to, $subject, $body); 
}

问题

if (strcmp ($res, "VERIFIED") == 0) {
 // 1. How to get my previous $_SESSION['cart'] here? 
 // 2. When I call my $_SESSION['cart'] here not ouput will come & it's empty.
 // 3. Or this code only to get $_POST data from Paypal website only?
}
4

1 回答 1

2

您不能,因为 IPN 在您的结帐过程之外得到通知。它本质上是与您网站的订购/付款过程分开的后台操作。如果该会话中有您需要访问的信息,则需要将其存储在数据库中,然后包含某种标识符,该标识符也将传递给 Paypal。电子邮件地址通常很好,但唯一的令牌(例如某种哈希)可能更好。然后,当 IPN 通知带有该标识符时,您可以将该信息从数据库中提取出来并根据需要使用。

于 2010-06-25T13:10:46.863 回答