求助--- ECSHOP 2.71为了支付宝发货确认接口,需要记录支付宝返回的交易号
2016-07-07 15:03 来源:www.chinab4c.com 作者:ecshop专家
1,在order_info 数据表尾添加trade_no 字段 数据表尾怎么添加trade_no 字段??? 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); /* 记录订单操作记录 */ |
回答:
我也在找这个问题的答案 |
同求答案! |
最近更新
常用插件
- ecshop2.7.1打印发货单插件
ecshop2.7.1打印发货单插件介绍:ecshop2.7.1和以前的ecshop版本不一样,ecs...
- ecshop二次商品订购人信息
ecshop二次商品订购人信息填写插件,有时候给朋友送花,或者是送礼品的...
- ecshop二次开发详细页面生
插件介绍: ECSHOP系统,在很多时候,很多商品没有人购买,不但购买的人...
- ecshop分类批量扩展插件
ecshop分类批量扩展插件,这个插件是ecshop插件里面比较核心的插件。我们...
- ecshop商品分类名称增加样
ecshop插件介绍:本插件可以方便在后台管理,为ecshop商品分类名称增加样...
ecshop热门问答
ecshop热门资料
ecshop超值
ecshop下限
ecshop签名
ecshopparameter
ecshop顺序
ecshopcolumn
ecshopPHP版本兼容
ecshop没有问题
ecshop户口
ecshopXXXXXX
ecshopMcAfee
ecshop部署
ecshop内容页打不开
ecshop百度google
ecshop手表
ecshop体育用品网错误
ecshop商品批量导出
ecshop东京
ecshop入口
ecshopmove
ecshop江山
ecshop底版
ecshop热门产品
ecshop全称
ecshop优惠券
ecshop阿里旺旺
ecshop成人用品
ecshopICP
ecshop财务
ecshop中心