2013-01-11 80 views
1

我有一個簡單的數字商品結賬工作在沙盒模式。我有一個「Pay with PayPal」按鈕,我可以點擊它彈出一個窗口登錄貝寶。之後,它將我重定向到我的purchasemade.php腳本,並從那裏我可以成功下載文件。PayPal數字商品:購買後如何獲得商品編號?

我的問題是在我的網站上我要銷售很多產品,所以我需要知道他們在購買完成後要下載哪個產品。每個產品都有一個唯一的ID,所以我認爲我會將該ID作爲HTML窗體中的項目編號傳遞給名爲「item_number」的隱藏字段。但是,一旦達到purchasemade.php,我不知道如何讀取該值。

如何讀取以原始格式在POST中傳遞的值?否則,識別產品的最佳方式是什麼?我使用PHP作爲此項目的腳本語言。

+0

你把產品的ID放在一個會話(或籃子)中嗎?如果是這樣,當PayPal指示用戶付款成功時,使用會話內容確定用戶在清除會話之前可以下載的內容。 – halfer

+0

奇怪的是,我試過會議,他們不工作。出於某種原因,一旦我從PayPal返回到我的網站,SESSION將被重置 –

+0

這將是您身邊的一個錯誤。不同網站上的(付款)網站無法清除自己域中的會話。 – halfer

回答

0

如果你要堅持Payments Standard我會建議使用IPN來提供您的數字商品。您可以使用PDT(與IPN非常相似)將訂單數據發送回用戶重定向到的頁面,但即使在您的PayPal帳戶中啓用了自動返回功能,也無法保證它們會在此處顯示。

或者,您可以使用Express Checkout API而不是付款標準。此方法可確保用戶在完成付款之前將其返回到您的網站。這將允許您使用會話變量,以便您可以在謝謝/收據頁面上向用戶呈現下載內容。

儘管如此,我認爲無論你走哪條路,IPN都是你最好的選擇。您可以使用它實時自動發送數字商品,發送一般電子郵件通知,更新數據庫,打擊第三方網絡服務等。

相關問題