目标:订单详情页可以根据订单查询当前物流信息。

效果图:

  

思路:点击后异步请求快递查询api,接受返回信息,拼接。

代码:

admin下:order_info.htm

//一:顶部插入jquery,在{if $user}{/if}后添加
<div id="topbara" style="display: none">
<table width="100%" border="0" id="aaa">
</table>
</div>
{if $ship}
<input type="hidden" id="apiname" value="{$apiname}">
{/if} //二:80行左右 查找{$order.order_sn} 替换这一个td
<td width="34%">{$order.order_sn}&nbsp;&nbsp;{if $ship}[<span id="postnu" style="cursor:pointer" value="{$postnu}">查看物流</span>]{else}[<span >暂无物流信息</span>]{/if}{if $order.extension_code eq "group_buy"}<a href="group_buy.php?act=edit&id={$order.extension_id}">{$lang.group_buy}</a>{elseif $order.extension_code eq "exchange_goods"}<a href="exchange_goods.php?act=edit&id={$order.extension_id}">{$lang.exchange_goods}</a>{/if}</td> //三:插入底部文件上面插入 Ajax异步接受和拼接数据
{literal}
<script>
$("#postnu").click(function () {
var postnu=$("#postnu").attr('value');
var apiname=$("#apiname").attr('value');
Ajax.call('order.php?act=show_wuliu','postnu='+postnu+'&apiname='+apiname ,showwuliu,'GET','TEXT');
});
function showwuliu(res) {
var data=JSON.parse(res);
var html="<caption><strong>物流详情 <span style='color:orangered' onclick='myclose()'><i>点击关闭</i></span></strong></caption>";
if (data["nu"]==''&&data["ischeck"]==0) {
html+="<caption><strong>"+data["message"]+"</strong></caption>";
}else{
for (var i = 0;i<data["data"].length;i++){
html+="<tr><td> 时间 :</td><td>"+data["data"][i]["time"]+"</td></tr><tr><td> 物流状态: </td><td>"+data["data"][i]["context"]+"</td></tr>}";
}
}
html +=" ";
$("#aaa").empty();
$("#aaa").append(html);
$("#topbara").show();
}
function myclose() {
document.getElementById( "topbara" ).style="display:none";
}
</script>
{/literal}

admin下:order.php

/*在act==info里面插入(判断是否打印订单上面即可)查询语句根据自己数据库调整*/
$select_sql = 'SELECT shipping_status,invoice_no,sp_api_name FROM '.$ecs->table('order_info').' order_info INNER JOIN '.$ecs->table('shipping').' shipping ON order_info.shipping_id=shipping.shipping_id where order_id='.$order_id;
$order_val=$db->getRow($select_sql);
$smarty->assign('ship',$order_val["shipping_status"]);
$smarty->assign('postnu',$order_val["invoice_no"]);
$smarty->assign('apiname',$order_val["sp_api_name"]); /*act==info下添加(该获取方式不推荐,次数多会被封账号,建议购买)*/
elseif ($_REQUEST['act']== 'show_wuliu'){
$apiname=$_GET['apiname'];
$postnu=$_GET['postnu'];
$url = "http://m.kuaidi100.com/query?type=" . $apiname . "&postid=" . $postnu . "&id=1&valicode=&temp=0.90644506498" . $temp;
$aaa=file_get_contents($url);
die($aaa);
}

部分代码根据自己的结构进行调整即可。

tag:ecshop二次开发 查询物流信息 订单号查询 复制可用 快递信息

ecshop根据订单号查询物流信息的更多相关文章

  1. ECSHOP快递单号查询插件圆通V8.2专版

    本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅急送快递.德邦物流.百世快递.汇通快递.中通快递.天天快递等知 ...

  2. ECSHOP快递物流单号查询插件

    本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅急送快递.德邦物流.百世快递.汇通快递.中通快递.天天快递等知 ...

  3. ECSHOP和SHOPEX快递单号查询百世快递插件V8.6专版

    发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...

  4. ECSHOP和SHOPEX快递单号查询顺丰插件V8.6专版

    发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...

  5. ECSHOP和SHOPEX快递单号查询申通插件V8.6专版

    发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...

  6. ECSHOP和SHOPEX快递单号查询韵达插件V8.6专版

    发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...

  7. ECSHOP和SHOPEX快递单号查询国际EMS插件V8.6专版

    发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...

  8. ECSHOP和SHOPEX快递单号查询德邦插件V8.6专版

    发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...

  9. ECSHOP和SHOPEX快递单号查询EMS插件V8.6专版

    发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...

随机推荐

  1. tp5引入第三方类库

    1.在/public/index.php中添加 define('EXTEND_PATH', '../extend/'); 2./extend/lib 中添加第三方类,类文件的名称和类名一样,命名空间为 ...

  2. input输入框校验,字母,汉字,数字等

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <meta http-e ...

  3. 别指望一文读懂Java并发之从一个线程开始

    Understanding concurrent programming is on the same order of difficulty as understanding object-orie ...

  4. 史上最简单的MySQL安装教程之Linux(CentOS6.8)下安装MySQL5.6

    一.准备 安装包:Percona-Server-5.6.21-70.0-r688-el6-x86_64-bundle.tar MySQL下载地址:http://www.percona.com/doc/ ...

  5. 用编写一个简单的记事本(C#实现)

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  6. Can you solve this equation?

    Problem Description Now,given the equation 8*x^4 + 7*x^3 + 2*x^2 + 3*x + 6 == Y,can you find its sol ...

  7. 面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)

    前些天,我在博客园里写了篇文章,如何在面试中介绍自己的项目经验,收获了2千多个点击,这无疑鼓舞了我继续分享的热情,今天我来分享另外一个面试中的甚至可以帮助大家逆转的技巧,本文来是从 java web轻 ...

  8. 不怕你配置不对,就怕你看的资料不对!MIM 与 SharePoint 同步完全配置指南。

    为了更好的同步 User Profile,在 SharePoint 2010 中首次引入了 FIM (ForeFront Identity Manager) 用于编辑 User Profile 的同期 ...

  9. HTML5 设备上的API

    一.Vibration API ,接受两种类型参数 vibrate (unsigned long time)   当参数是unsigned long的时候 此时参数表示震动时间.  NotSuppor ...

  10. CentOS7修改网卡名称,禁用ipv6

    有时候新装的CentOS7系统网卡默认名称是eno16777736,为方便改成传统eth0 修改网络配置文件 # cd /etc/sysconfig/network-script/ # vim ifc ...