2010-06-25 66 views
0

我想我以前$_SESSION['cart']IPN Code贝宝IPN贝宝IPN如何让当前会话

样品我用。一切工作正常,脚本得到了来自Paypal的$_POST数据。

if (strcmp ($res, "VERIFIED") == 0) { 
     $subject = time(); 
     $to  = '[email protected]'; 
     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? 
} 

回答

2

你不能因为IPN的结帐流程之外通知。它基本上是一个独立于您网站的订购/付款流程的后台操作。如果该会话中有需要访问的信息,则需要将其存储在数据库中,然后在其中包含某种标识符并将其传递给PayPal。电子邮件地址通常很好,但是一个独特的标记,比如某种类型的散列,可能会更好。然后,当IPN通知带有该标识符时,您可以将该信息从数据库中提取出来并根据需要使用。