2012-03-14 109 views
2

嘿你们我有一个问题。我有我的页面上的购物车和工作正常,并在会话中存储的信息,并将其使用这种形式的贝宝....PayPal传递多个订单

<?php $items = unserialize($_SESSION['items']); ?> 
<form action="https://www.paypal.com/cgi-bin/webscr" method="post"> 
<input type="hidden" name="cmd" value="_xclick"> 
<input type="hidden" name="no_note" value="1"> 
<input type="hidden" name="business" value="[email protected]"> 
<input type="hidden" name="currency_code" value="CAD"> 
<input type="hidden" name="return" value="http://www.mysite.com/"> 
<input type="hidden" name="item_name" value="<?php echo $items['1_']['name']; ?>"> 
<input type="hidden" name="amount" value="<?php echo $items['1_']['price']; ?>"> 
<input type="submit" name="paypal" id="paypal" value="Checkout" /> 
</form> 

但是,当我的会议有一个以上的项目仅贝宝两个项目只有一个。

所以我的问题是如何使用此表单将多个项目传递给paypal?

如果有人能指出我会朝着正确的方向发展,那就太棒了!

在先进的感谢,

  • Ĵ

回答

4

使用_cart代替_xclick的cmd值,还包括上载= 1倍的值:

<input type="hidden" name="cmd" value="_cart"> 
<input type="hidden" name="upload" value="1"> 

你需要重复item_nameamount投入在车的每一项,但使用一个计数器作为一个后缀例如item_name_xamount_xx对于第一个项目应该是1,并且对于购物车中的每个其他项目都应该增加。所以第一项将是item_name_1item_amount_1

完整的文档 - 向下滚动到Method 2. Passing Individual Items to PayPalhttps://www.paypal.com/cgi-bin/webscr?cmd=p/pdn/howto_checkout-outside

所以,你的代码可能看起来是这样的:

<?php $items = unserialize($_SESSION['items']); ?> 
<form action="https://www.paypal.com/cgi-bin/webscr" method="post"> 
<input type="hidden" name="cmd" value="_cart"> 
<input type="hidden" name="upload" value="1"> 
<input type="hidden" name="no_note" value="1"> 
<input type="hidden" name="business" value="[email protected]"> 
<input type="hidden" name="currency_code" value="CAD"> 
<input type="hidden" name="return" value="http://www.mysite.com/"> 

<?php 
    $suffix = 1; 
    foreach($items as $item): 
?> 
<input type="hidden" name="item_name_<?php echo $suffix; ?>" value="<?php echo $item['name']; ?>"> 
<input type="hidden" name="amount_<?php echo $suffix; ?>" value="<?php echo $item['price']; ?>"> 
<?php 
    $suffix++; 
    endforeach; 
?> 

<input type="submit" name="paypal" id="paypal" value="Checkout" /> 
</form> 
+0

现在测试此功能 – user1269625 2012-03-14 17:48:16

+0

我在PayPal页面出现错误,提示“您的购物车是空的。 – user1269625 2012-03-14 17:50:55

+0

我用一些示例代码编辑了答案。尝试一下,但改变业务并返回到您的电子邮件和网站。 – MrCode 2012-03-14 17:54:48

2

首先改变_xclick到_cart,然后添加一个新的隐藏字段:

<input type="hidden" name="upload" value="1"> 

然后用ITEM_NAME_1,item_amount_1,item_name_2, item_amount_2 ... item_name_N,item_amount_N将您的多个项目传递给PayPal。

+1

这样“> “> “> “> “> “> – user1269625 2012-03-14 17:44:17

+0

user1269625 2012-03-14 17:44:31

0

万一别人绊倒这个在未来,请务必遵循@ strkol的帖子。 我挣扎与此直到我改变_xclick到_cart并加入 <input type="hidden" name="upload" value="1">