2014-02-09 91 views
0

我想開發一個客戶網站的結帳系統,我想知道最好的方式來做到這一點。請讓我知道下面我嘗試過的任何替代方案。PHP PayPal結賬

目前我有:

1)在車中的物品保存到$ _SESSION變量

2)當用戶按下「結賬」時,他們被帶到一個網頁,一個無形的形式職位信息保存在$ _SESSION中https://www.paypal.com/cgi-bin/webscr

3)當支付確認後,它們被重定向到站點上的confirm.php,觸發一個電子郵件給客戶端和包含來自購物車的信息的商店(存儲在$ _SESSION中)和地址數據傳回(因爲我無法傳遞購物車中的所有屬性信息貝寶在第一次POST)從貝寶。

我的解決方案的問題是,它似乎不適用於移動Safari,iPads,iPhone或更舊的系統。因此,我正在尋找替代方案,或者讓數據保持持久性,因爲從這些設備之一執行時,最終發送的電子郵件中不包含任何數據。

回答

1

使用數據庫可以將整個車的​​時間或不完整的存儲調用支付寶付款前,然後通過confirm.php得到的所有信息,修改車的狀態等在

而且你PayPal賬戶可以在每次付款時激活自動IPN。

IPN是一個監聽器,可以在您的網站上運行並調用paypal。你可以在網上找到很多這樣的例子。

這個想法是,你通過貝寶表單上的所有字段,貝寶將使用IPN呼叫將其發回。

在PayPal的形成,你可以添加自定義隱藏輸入:

<input type="hidden" name="cart_id" value="<?php echo $id ?>"> 

而在IPN監聽器,你會得到cart_id = 4,這樣你就可以自動知道哪個籃付款就完成了,哪個用戶購物車屬於,更改購物車狀態和電子郵件用戶。

希望這可以幫助你。

+0

非常感謝ruudy!非常好的主意。 – Jamus