本文实例讲述了ecshop支付宝自动发货接口用法。分享给大家供大家参考,具体如下:

一、在数据库order_info中添加trade_no 字段

SQL语句:

复制代码代码如下:

ALTER TABLE `ec_order_info` ADD COLUMN `trade_no` varchar(100) NOT NULL DEFAULT '' AFTER `pay_name`;

二、 修改includes/modules/payment/alipay.php文件

查找:

复制代码代码如下:

$order_sn = trim($order_sn);

代码之下添加:

复制代码代码如下:

$trade_no = trim($_GET['trade_no']);//获取支付宝交易号

查找:

复制代码代码如下:

if ($_GET['trade_status'] == 'WAIT_SELLER_SEND_GOODS')

{

/* 改变订单状态 */

order_paid($order_sn, 2);

修改:

复制代码代码如下:

if ($_GET['trade_status'] == 'WAIT_SELLER_SEND_GOODS')

{

/* 改变订单状态 */

order_paid($order_sn, 2,'',$trade_no);

三、修改includes/lib_payment.php文件原文件118行开始

复制代码代码如下:

/**

* 修改订单的支付状态

*

* @access public

* @param string $log_id 支付编号

* @param integer $pay_status 状态

* @param string $note 备注

* @param string $trade_no 支付宝交易号

* @return void

*/

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, trade_no, 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'];

/*解决订单修改后多次付款发货确认*/

$trade = $order['trade_no'];

if (!emptyempty($trade))

{

$trade_no = $trade.",".$trade_no;

}

/* 修改订单状态为已付款 */

$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," .

" trade_no = '$trade_no',".//更新支付宝交易号

" order_amount = 0 ".

"WHERE order_id = '$order_id'";

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

四、修改admin/order.php文件

查找:

复制代码代码如下:

$smarty->assign('action_list', $act_list);

/* 模板赋值 */

$smarty->assign('delivery_order', $delivery_order);

$smarty->assign('goods_list', $goods_list);

$smarty->assign('delivery_id', $delivery_id); // 发货单id

代码之上添加:

复制代码代码如下:

/*判断支付方式是否支付宝*/

$alipay = false;

$order = order_info($delivery_order['order_id']); //根据订单ID查询订单信息,返回数组$order

$payment = payment_info($order['pay_id']); //取得支付方式信息

if($payment['pay_code'] == "alipay" && $delivery_order['status'] == 2 && !emptyempty($order['trade_no']))

{

$alipay = true;

}

$smarty->assign('alipay', $alipay);

五、修改admin\templates\delivery_info.htm文件

查找:

复制代码代码如下:

替换:

复制代码代码如下:

this.submit();this.target='_self';this.action='order.php'"{else}action="order.php"{/if} method="post" name="theForm">

六、 上传alipay_delivery.php文件到admin 目录下.

希望本文所述对大家基于Ecshop程序设计有所帮助。

支付宝 自动发货 php,ecshop支付宝自动发货接口用法示例相关推荐

  1. 支付宝 自动发货 php,ecshop 支付宝自动发货接口

    一.在数据库order_info中添加trade_no字段 SQL语句:ALTER TABLE `ec_order_info` ADD COLUMN `trade_no`  varchar(100) ...

  2. 发货100虚拟商品自动发货系统

    发货100–虚拟商品自动发货系统是一套功能强大的虚拟商品自动发货系统/文章付费阅读系统,无需人工值守,客户在线购买即可自动完成交易. 支持缺货提醒/快捷登录/回收站/免登录购买等多种功能. [模板说明 ...

  3. python支付宝自动转账_python实现支付宝转账接口

    python实现支付宝转账接口 发布时间:2020-09-14 03:23:42 来源:脚本之家 阅读:128 由于工作需要使用python开发一个自动转账接口,记录一下开发过程. 首先需要在蚂蚁金服 ...

  4. python支付宝自动支付_python 调用支付宝支付

    支付宝接口集成,本地环境调试支付请求 1.首先登录 蚂蚁金服网站,也就是支付宝开发者平台 登录蚂蚁金服开发者平台后,创建沙箱应用 开发者平台 也就是支付宝给开发者提供的调试环境应用 沙箱测试应用 2. ...

  5. 微信和支付宝的服务器在哪里,支付宝、iPhone、微信的自动续费服务在哪?我们要如何关闭?...

    原标题:支付宝.iPhone.微信的自动续费服务在哪?我们要如何关闭? 我们在使用手机时或多或少都会充一些会员,比如视频会员什么的,但你知道吗?这些充值都是自动续费,可时间长了我们或许都忘了这件事,这 ...

  6. Ecshop支付宝网银支付插件|支付宝网银直连插件|纯网关网银接口

    2019独角兽企业重金招聘Python工程师标准>>> 集成支付宝(纯网关)网银支付 功能说明://1.后台增加一个支付方式(网银支付) alipay.php        //2. ...

  7. ecshop图片自动本地化插件,ECSHOP下载商品图片,ECSHOP商品详情远程图片,ecshop商品远程图片保存,ecshop图片自动本地化插件,商品图片本地化

    ecshop图片自动本地化插件,ECSHOP下载商品图片,ECSHOP商品详情远程图片,ecshop商品远程图片保存,ecshop图片自动本地化插件,商品图片本地化,图片远程本地化插件,ecshop远 ...

  8. ecshop支付宝付款成功后台显示未付款

    ecshop支付宝前台付款后台显示未付款处理成已付款 网站根目录下respond.php,在文件中搜索: if (file_exists($plugin_file)) 改成 if (file_exis ...

  9. Ecshop支付宝插件SQL注入及漏洞利用(exp)

     0x00 在\includes\modules\payment\alipay.php文件中,有一个response函数用来处理支付信息,在ECSHOP的init初始化文件中,默认是做了全局转义的 ...

最新文章

  1. 最早的神经元从何而来?海绵基因图谱揭示神经系统起源
  2. Android面试题目(10) 内存泄露
  3. pl sql developer中如何调试存储过程以及调试包中创建的存储过程
  4. YBTOJ洛谷P2042:维护数列(平衡树)
  5. mysql管理节点_MySql节点管理安装步骤需要在SerA和SerB上各做一次
  6. java从入门到精髓 - IO输入输出
  7. python html表格模版,python-如何使用模板(例如Jinja2)将列值列表呈现到表中
  8. 用Python批量下载MOOC资源
  9. html默认初始代码
  10. 一、二层交换机构建局域网
  11. 3*4的方格,有多少个长方形?
  12. JVM基本原理,简明扼要,通俗易懂
  13. java项目经理负责做什么的,项目经理JAVA岗位职责
  14. C++ char*类型的实参与 LPCWSTR类型的形参不兼容
  15. 数字中国建设意义和面临的挑战
  16. 疯狂试探mysql单表insert极限:已实现每秒插入8.5w条数据
  17. codeblocks linux使用教程,codeblocks教程
  18. PHP intval 与 floatval
  19. 【小白】SQLyog下载安装配置篇全攻略
  20. 掌握电商数据的4个要点,电商平台数据分析其实很简单

热门文章

  1. 志向在沉重的青春下腾飞
  2. safeAreaLayoutGuide
  3. Hutool是一个小而全的Java工具类库
  4. 使用AlexNet网络区分宝可梦和数码宝贝
  5. Python进阶(九)Python陷阱:Nonetype
  6. Idea右键创建不了
  7. 美股日志|亚马逊拖累 标指连升六个月
  8. Android发送接收WiFi,安卓Socket连接实现连接实现发送接收数据,openwrt wifi转串口连接单片机实现控制,安卓openwrt...
  9. 连续型随机变量及其常见分布的分布函数和概率密度
  10. 金九银十,入职字节跳动那一天,我哭了