IT.互联网.数字化营销.数字化管理 b2b.b2c.ERP.MRPⅡ.CRM.
Name:Joss Zhang:QQ:66870098 常州 江苏
我是一个充满了激情和灵感的人,爱好艺术、阅读、写作、游泳、旅行……。 I'm a full of passion and inspiration,Hobbies art, reading, writing, swimming, travel...
张民强·数字化营销与管理 > 企业信息化 > 官方支付宝接口少了收货人信息的解决办法(PHP)

官方支付宝接口少了收货人信息的解决办法(PHP)

Post by josszhang, 2014/8/27, Views:

官方的支付宝接口里没有挂地址,收货人,邮编等参数,从而到了支付页面还要填写一遍地址,收货人,比较的麻烦,如果能增加地址,收货人参数后就不再重复劳动了。

 

解决方案如下:

 

1.flow.php

 

找到

[代码]php代码:

1

/* 插入支付日志 */

2

$order['log_id'] = insert_pay_log($new_order_id, $order['order_amount'], PAY_ORDER);

 

在其后加入:

[代码]php代码:

1

/* 取得收货区域(国家/省份/城市等)*/

2

$order['buyer_region'] = get_buyer_region($new_order_id);

 

在flow.php文件底部加入如下函数:

 

[代码]php代码:

01

/**

02

* 取得收货地址区域名  2009-11-10

03

* @param $order_id 订单号

04

* @return string

05

*/

06

function get_buyer_region($order_id){

07

    /* 取得区域名 */

08

    $sql = "SELECT concat(IFNULL(c.region_name, ''),IFNULL(p.region_name, ''), " .

09

                    " IFNULL(t.region_name, ''), IFNULL(d.region_name, '')) AS region " .

10

                "FROM " . $GLOBALS['ecs']->table('order_info') . " AS o " .

11

                    "LEFT JOIN " . $GLOBALS['ecs']->table('region') . " AS c ON o.country = c.region_id " .

12

                    "LEFT JOIN " . $GLOBALS['ecs']->table('region') . " AS p ON o.province = p.region_id " .

13

                    "LEFT JOIN " . $GLOBALS['ecs']->table('region') . " AS t ON o.city = t.region_id " .

14

                    "LEFT JOIN " . $GLOBALS['ecs']->table('region') . " AS d ON o.district = d.region_id " .

15

                "WHERE o.order_id = '$order_id'";

16

    return $GLOBALS['db']->getOne($sql);

17

}

 

2.includes\modules\payment\alipy.php

 

找到 

[代码]php代码:

1

'seller_email'      => $payment['alipay_account'],

 

在其后增加如下配置:

[代码]php代码:

1

/* 收货人,地址信息*/

2

'receive_name'         => $order['consignee'],

3

'receive_address'    => $order['buyer_region'].$order['address'],

4

'receive_zip'    => $order['zipcode'],

 

ps:地址是urldecode过的

 

官方原版的支付宝地址如下:

 

https://www.alipay.com/cooperate/gateway.do?_input_charset=utf-8&agent=C4335319945672464113&logistics_fee=0&logistics_payment=BUYER_PAY&logistics_type=EXPRESS&notify_url=http://127.0.0.1/ecshop/respond.php?code=alipay&out_trade_no=200911105213010&partner=2088002692045431&payment_type=1&price=16.00&quantity=1&return_url=http://127.0.0.1/ecshop/respond.php?code=alipay&seller_email=xiaochong0302@hotmail.com&service=trade_create_by_buyer&subject=2009111052130&sign=8894ebd13e248d043f90a6e0c41b6a68&sign_type=MD5

 

支付宝的地址就变成如下:

 

https://www.alipay.com/cooperate/gateway.do?_input_charset=utf-8&agent=C4335319945672464113&logistics_fee=0&logistics_payment=BUYER_PAY&logistics_type=EXPRESS&notify_url=http://127.0.0.1/ecshop/respond.php?code=alipay&out_trade_no=200911105213010&partner=2088002692045431&payment_type=1&price=16.00&quantity=1&receive_address=中国广东深圳南山区竹子林1050号&receive_name=侯琳琳&receive_zip=8126743&return_url=http://127.0.0.1/ecshop/respond.php?code=alipay&seller_email=xiaochong0302@hotmail.com&service=trade_create_by_buyer&subject=2009111052130&sign=8894ebd13e248d043f90a6e0c41b6a68&sign_type=MD5

 

 

原文地址: http://www.php2.cc/article-1505-1.html

 


分享到:

Tags:        
分类:企业信息化 | 评论:0 | 引用:0 | 点击这里获取该日志的TrackBack引用地址
上一篇:另一种收集:非名人经典句0001
下一篇:什么是精益创业?

或许你还对下面的文章感兴趣

Comments

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门话题

最新话题

最新评论

最新留言

无觅相关文章插件,快速提升流量