支付宝发货确认接口
2016-07-07 14:55 来源:www.chinab4c.com 作者:ecshop专家
ECSHOP 2.71为了支付宝发货确认接口,需要记录支付宝返回的交易号 1,在order_info 数据表尾添加trade_no 字段 2,在alipay.php文件的约202行 /** * 响应操作 */ function respond() { if (!empty($_POST)) { foreach($_POST as $key => $data) { $_GET[$key] = $data; } } $payment = get_payment($_GET['code']); $seller_email = rawurldecode($_GET['seller_email']); $order_sn = str_replace($_GET['subject'], '', $_GET['out_trade_no']); $order_sn = trim($order_sn); /*自定义--------------获取支付宝交易号*/ $trade_no = trim($_GET['trade_no']); /* 自定义---end*/ /* 检查支付的金额是否相符 */ if (!check_money($order_sn, $_GET['total_fee'])) { return false; } 。。。。。省略下面接 250行处 if ($_GET['trade_status'] == 'WAIT_SELLER_SEND_GOODS') { /* 改变订单状态 */ order_paid($order_sn, 2,'',$trade_no); return true; } ........................省略 在lib_payment.php里面约119行 /** * 修改订单的支付状态 * * @accesspublic * @paramstring$log_id支付编号 * @paraminteger $pay_status 状态 * @paramstring$note 备注 * @paramstring$trade_no自定义---支付宝交易号 * @returnvoid */ function order_paid($log_id, $pay_status = PS_PAYED, $note = '' ,$trade_no = '') { /* 取得支付编号 */ $log_id = intval($log_id); if ($log_id > 0) { /* 取得要修改的支付记录信息 */ $sql = "SELECT * FROM " . $GLOBALS['ecs']->table('pay_log') . " WHERE log_id = '$log_id'"; $pay_log = $GLOBALS['db']->getRow($sql); if ($pay_log && $pay_log['is_paid'] == 0) { /* 修改此次支付操作的状态为已付款 */ $sql = 'UPDATE ' . $GLOBALS['ecs']->table('pay_log') . " SET is_paid = '1' WHERE log_id = '$log_id'"; $GLOBALS['db']->query($sql); /* 根据记录类型做相应处理 */ if ($pay_log['order_type'] == PAY_ORDER) { /* 取得订单信息 */ $sql = 'SELECT order_id, user_id, order_sn, consignee, address, tel, shipping_id, extension_code, extension_id, goods_amount ' . 'FROM ' . $GLOBALS['ecs']->table('order_info') . " WHERE order_id = '$pay_log[order_id]'"; $order = $GLOBALS['db']->getRow($sql); $order_id = $order['order_id']; $order_sn = $order['order_sn']; /* 修改订单状态为已付款 */ $sql = 'UPDATE ' . $GLOBALS['ecs']->table('order_info') . " SET order_status = '" . OS_CONFIRMED . "', " . " confirm_time = '" . gmtime() . "', " . " pay_status = '$pay_status', " . " pay_time = '".gmtime()."', " . " money_paid = order_amount," . " order_amount = 0,". " trade_no = '$trade_no'"./*自定义---添加支付宝交易号*/ "WHERE order_id = '$order_id'"; $GLOBALS['db']->query($sql); /* 记录订单操作记录 */ 就能记录交易号!谢谢齐迹指点 以下是后台文件修改: 1.复制附件文件queren_fahuo.php到admin目录下;(注意编码和支付宝接口方式) 2.修改admin\templates\delivery_info.htm文件; 第8行左右: <div class="list-div" style="margin-bottom: 5px"> <table width="100%" cellpadding="3" cellspacing="1"> <form action="order.php" method="post" name="theForm"> <tr> <th colspan="4">{$lang.base_info}</th> </tr>。。。。 修改为: 代码传上来就变样了见附件2: 一切搞定收工; 附件: 附件2: |
回答:
给 order_paid 函数增加一个参数trade_no 不然函数中获取不到这个 trade_no |
给 order_paid 函数增加一个参数trade_no 已经解决!谢谢 |
我试了一下,好像不行了。。。 |
这个是什么意思啊?是不是付款后,提示用户已经付款完毕? |
如果是同一张订单,多次付款呢? |
针对用户采用支付宝担保交易付款时使用卖家发货无需登陆到支付宝账户操作,直接通过商户网站系统发货即可! |
给 order_paid 函数增加一个参数trade_no if ($_GET['trade_status'] == 'WAIT_SELLER_SEND_GOODS') { /* 改变订单状态 */ order_paid($order_sn, 2); return true; } elseif ($_GET['trade_status'] == 'TRADE_FINISHED') { /* 改变订单状态 */ order_paid($order_sn); return true; } elseif ($_GET['trade_status'] == 'TRADE_SUCCESS') { /* 改变订单状态 */ order_paid($order_sn, 2); return true; } else { return false; } 三个order_paid都要加吗? |
学习中!! |
这个接口是所有的用户都能用吗? 听说要3600以上的用户才能用,是这样吗? |
好东西!!学习中! |
会出现这个情况呀: failed to open stream: No error in D:\newshop\admin\queren_fahuo.php on line 144 could not open XML input |
还有一个问题.... 如果不是支付宝结账,也还会跳出queren_fahuo.php页面来..... |
queren_fahuo.php????? |
普通用户不能使用吗?? 我的提示错误 |
最近更新
常用插件
- ecshop二次商品订购人信息
ecshop二次商品订购人信息填写插件,有时候给朋友送花,或者是送礼品的...
- ecshop2.7.1打印发货单插件
ecshop2.7.1打印发货单插件介绍:ecshop2.7.1和以前的ecshop版本不一样,ecs...
- ecshop商品分类名称增加样
ecshop插件介绍:本插件可以方便在后台管理,为ecshop商品分类名称增加样...
- ecshop二次开发详细页面生
插件介绍: ECSHOP系统,在很多时候,很多商品没有人购买,不但购买的人...
- ecshop分类批量扩展插件
ecshop分类批量扩展插件,这个插件是ecshop插件里面比较核心的插件。我们...
ecshop热门问答
ecshop热门资料
ecshopMichael
ecshop安全套
ecshop痛哭流涕
ecshop视频播放器
zencart销售排行
ecshop火车头
ecshop中心
ecshop用户组
ecshopCompare
ecshop银卡
ecshopget_final_price
ecshop欢迎页
ecshop操作按钮
ecshop无耻之徒
ecshop金鸡独立
ecshopleapftp
ecshopEC
ecshopdecode
ecshopMoneyBooker
ecshop画框
ecshop杀毒软件
ecshop右面
ecshop地址
ecshop微信公众平台
ecshop站内公告
ecshop中老年人
ecshoplock
ecshop总额
ecshop求助上传图片
分析ur_here.lbi