我正在使用Angelleye类来设置快速结帐。使用演示,我可以接受多个项目的付款给自己。我有一个网站,代表人们做广告,购物车被建造,并将每个卖家的价值分解成一个数组。
如何使用SetExpressCheckout.php为接收器创建数组。
这是我从购物车里得到的数组的演示。
Array
(
[102340] => Array
(
[name] => Mandy
[paypal] => sales@one.co.uk
[artwork] => Array
(
[data_id] => Array
(
[0] => 1034
[1] => 1038
)
[name] => Array
(
[0] => Pink Foxgloves
[1] => Big Red Poppies
)
[qty] => Array
(
[0] => 1
[1] => 1
)
[price] => Array
(
[0] => 260
[1] => 288
)
)
[amount] => 548
)
[102341] => Array
(
[name] => John C
[paypal] => sales@two.co.uk
[artwork] => Array
(
[data_id] => Array
(
[0] => 1052
)
[name] => Array
(
[0] => Success
)
[qty] => Array
(
[0] => 1
)
[price] => Array
(
[0] => 46.75
)
)
[amount] => 46.75
)
)所以曼迪卖出了两件:
编号: 1034名称:粉红狐狸手套数量:1小计: 260.00
编号: 1038名称:大红罂粟数量:1小计: 288.00
约翰卖掉了
名称:成功数量:1小计: 46.75
我还有:594.75。
如果我能在快速结账中得到接收者,那就很好了,如果我也能得到他们的项目,这将是很好的。
提前谢谢。
发布于 2015-04-09 05:19:27
所以,经过研究,在任何地方都没有什么帮助,我通过尝试和错误找到了答案。
在setexpresscheckout脚本中,我必须在支付数组区域周围执行一个foreach循环。
这一地区将有食谱电子邮件/贝宝id,货币,金额和一个独特的付款请求id。
在这个循环中,我在项目周围运行另一个循环,并生成从卖方购买的物品列表。
然后,我将所有这些设置为一个数组,该数组将按照通常的方式发送给单个卖方。
这是我的代码,但很明显,这对我的任务非常具体。
// setup the holding array for all the details
$Payments = array();
foreach ($seller as $key => $value) {
// reset the items array for each recipient
$PaymentOrderItems = array();
// setup each recipient details
$Payment = array(
'currencycode' => 'GBP',
'amt' => $value['amount'],
'sellerpaypalaccountid' => $value['paypal'],
'paymentrequestid' => 'Payment'.$key
);
// loop through the products for each seller
foreach ($value['artwork'] as $akey) {
$Item = array(
'number' => $akey['data_id'],
'desc' => $akey['name'],
'qty' => $akey['qty'],
'amt' => round($akey['price'],2)
);
// push this item into the item array for this recipient
array_push($PaymentOrderItems, $Item);
}
// add the item array to the payment array
$Payment['order_items'] = $PaymentOrderItems;
// push the payment array to the main payments array
array_push($Payments, $Payment);
}我希望这能帮助那些想要使用快捷结账而不是适应性付款的其他人。
https://stackoverflow.com/questions/29490208
复制相似问题