2015-05-10 80 views
1

所以我已經設置使用PHP發送自定義變量我的按鈕:如何從PayPal IPN調用自定義變量?

$vars = array(
      'cmd' => '_s-xclick', 
      'hosted_button_id' => 'xxxxxxxxx', 
      'custom' => $lastId, 
    ); 

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

什麼,我想在這裏做的是發送通過Paypal上次插入行的ID,以我的PayPal IPN。然後根據付款狀態使用該ID修改記錄。

所以在貝寶IPN我會查找基於$ lastid的表格記錄。 例如:

$sql = "SELECT x FROM table WHERE id = a"; 

a是應該從貝寶回來的自定義變量。

+0

你能更詳細你的問題? – zeflex

回答

1

IPN將數據的HTTP POST發送到您的腳本,因此您可以像解析基本表單文章一樣解析它。所以,如果你想添加自定義變量到你的SQL查詢中,你可以這樣做。

$lastId = isset($_POST['custom']) ? $_POST['custom'] : ''; 
$sql = "SELECT x FROM table WHERE id = '" . $lastId . "'"; 
0

如果您需要自定義發送多個變量,你可以使用破滅()和爆炸()來檢索回來。

派:

$lastId = '1'; 
$lastDate = $insertDate; 

$myCustomArr = array($lastId, $lastDate); 
$myCustom = implode(',', $myCustomStrArr); 

要返回:

if(isset($_POST['custom'])){ 
    $custom = $_POST['custom']; 
    $customArr = explode(',', $custom); 
    $lastId = $customArr[0]; 
    $lastDate = $customArr[1]; 
}