您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop订单列表增加商品检索的方法
以亦2024-12-19Ecshop商城教程已有人查阅
导读近期ecshop网站做活动,统计商品订单量的时候没有按商品名搜索的选项,只能手动查询。这样效率很低下,而且容易出错。现在为列表增加一个简单的“按商品名搜索”表单项。
近期ecshop网站做活动,统计商品订单量的时候没有按商品名搜索的选项,只能手动查询。这样效率很低下,而且容易出错。现在为列表增加一个简单的“按商品名搜索”表单项。
涉及到2个文件,分别是/admin/order.php,/admin/templates/order_list.htm,下面详说。第一步,增加表单项
在/admin/templates/order_list.htm第11行下面增加
1 商品名
在/admin/order_list.htm第105行下面增加
3.1)php文件接收参数并准备拼接sql
在/admin/order.php第4874行找到“$where = ‘WHERE 1 ‘;”,在下面增加
分别更改/admin/order.php第5025,5029,5041行sql语句为下面三句代码
1,
有几点可以改进:表单名可以存到系统语言包;可以按照此方法在“订单查询”那个大表单里扩展更多动能,紧急情况就先这样…
为了搜索订单更精准,决定完成之前说的改进:在“订单查询”那个大表单里扩展”商品名”检索功能,相当简单:
在/admin/templates/order_query.htm第七行下面增加
这个过程中js自动获取了表单的所有项目,而且之前我们已经完成了/admin/order.php中order_list()函数的改造。
涉及到2个文件,分别是/admin/order.php,/admin/templates/order_list.htm,下面详说。第一步,增加表单项
在/admin/templates/order_list.htm第11行下面增加
1 商品名
<input name="goods_name" type="text" id="goods_name" size="15">
这样,代码上下文基本为
{$lang.order_sn}<input name="order_sn" type="text" id="order_sn" size="15">
{$lang.consignee|escape}<input name="consignee" type="text" id="consignee"size="15">
商品名<input name="goods_name" type="text" id="goods_name" size="15">
{$lang.all_status}
<select name="status" id="status">
第二步,js获取值在/admin/order_list.htm第105行下面增加
listTable.filter['goods_name'] = Utils.trim(document.forms['searchForm'].elements['goods_name'].value);
这样,代码上下文基本为
/**
* 搜索订单
*/
function searchOrder()
{
listTable.filter['order_sn'] = Utils.trim(document.forms['searchForm'].elements['order_sn'].value);
listTable.filter['consignee'] = Utils.trim(document.forms['searchForm'].elements['consignee'].value);
listTable.filter['goods_name'] = Utils.trim(document.forms['searchForm'].elements['goods_name'].value);
listTable.filter['composite_status'] = document.forms['searchForm'].elements['status'].value;
listTable.filter['page'] = 1;
listTable.loadList();
}
第三步,接收参数并处理3.1)php文件接收参数并准备拼接sql
在/admin/order.php第4874行找到“$where = ‘WHERE 1 ‘;”,在下面增加
$join_goods =" ";
if ($filter['goods_name'])
{
$join_goods = " LEFT JOIN " .$GLOBALS['ecs']->table('order_goods'). " AS og ON o.order_id=og.order_id LEFT JOIN " .$GLOBALS['ecs']->table('goods'). " AS g ON g.goods_id = og.goods_id ";
$where .= " AND g.goods_name LIKE '%" . mysql_like_quote($filter['goods_name']) . "%'";
}
3.2)拼接sql分别更改/admin/order.php第5025,5029,5041行sql语句为下面三句代码
1,
$sql = "SELECT COUNT(*) FROM " . $GLOBALS['ecs']->table('order_info') . " AS o ,".
$GLOBALS['ecs']->table('users') . " AS u ". $join_goods. $where;
2.
$sql = "SELECT COUNT(*) FROM " . $GLOBALS['ecs']->table('order_info') . " AS o ".$join_goods. $where;
3.
/* 查询 */
$sql = "SELECT o.order_id, o.order_sn, o.add_time, o.order_status, o.shipping_status, o.order_amount, o.money_paid," .
"o.pay_status, o.consignee, o.address, o.email, o.tel, o.extension_code, o.extension_id, " .
"(" . order_amount_field('o.') . ") AS total_fee, " .
"IFNULL(u.user_name, '" .$GLOBALS['_LANG']['anonymous']. "') AS buyer ".
" FROM " . $GLOBALS['ecs']->table('order_info') . " AS o " .
" LEFT JOIN " .$GLOBALS['ecs']->table('users'). " AS u ON u.user_id=o.user_id ".$join_goods. $where .
" ORDER BY $filter[sort_by] $filter[sort_order] ".
" LIMIT " . ($filter['page'] - 1) * $filter['page_size'] . ",$filter[page_size]";
完成,这样就可以了有几点可以改进:表单名可以存到系统语言包;可以按照此方法在“订单查询”那个大表单里扩展更多动能,紧急情况就先这样…
为了搜索订单更精准,决定完成之前说的改进:在“订单查询”那个大表单里扩展”商品名”检索功能,相当简单:
在/admin/templates/order_query.htm第七行下面增加
<tr>
<td><div align="right"><strong>商品名</strong></div></td>
<td><input name="goods_name" type="text" id="goods_name" size="40"></td>
</tr>
即可这个过程中js自动获取了表单的所有项目,而且之前我们已经完成了/admin/order.php中order_list()函数的改造。
本文标签:
很赞哦! ()
上一篇:ecshop二次开发教程步骤流程
下一篇:ecshop广告怎么调用
相关教程
图文教程
ecshop商品详情页怎么显示商品折扣价
修改includes\lib_goods.php 文件,在大约343行(即注释“/* 获得商品的销售价格 ”)后面添加:
ecshop后台订单加入商品到订单时提示库存不足请重新选择怎么办
代码号讲解下ECSHOP后台给订单商品信息编辑里面添加商品时提示库存不足请重新选择的BUG问题,ecshop所有版本包含ecshop4.0版本中都出现了这个bug官方未修复
ecshop默认模板左下角LOGO图标怎么删除
用户有两种选择方案:(1)、用自己的Logo图标替换掉原来的:(2)、删除ECSHOP默认的Logo图标:
ecshop的ajax使用方法示例
ecshop中的ajax非常好用,当自己第一次使用的时候,也非常吃力。当自己用多了的时候,却感觉十分简单,也特别方便。
相关源码
-
帝国cms7.5自适应作文新闻资讯教育网站模板本模板基于帝国CMS7.5内核开发,为教育机构、培训学校等知识传播单位打造。通过自适应设计确保在手机、平板、电脑等设备上均能获得专业浏览体验查看源码 -
pbootcms模板(PC+WAP)微信小程序开发公司网站本模板为微信小程序开发代理、软件开发公司等企业设计,基于PbootCMS内核开发,支持PC+WAP双端响应式布局,数据实时同步,适用于多行业快速建站。查看源码 -
pbootcms网站模板响应式全屏旅游景区网站源码本模板为风景民宿、旅游景区等企业设计,基于PbootCMS内核开发,具备响应式布局与专业SEO优化功能,助力企业低成本高效获客。以下是核心特点:查看源码 -
(PC+WAP)绿色环保建筑设备通用行业pbootcms源码下载通过模块调整可适配园林景观、装配式建筑、绿色装修等生态建设相关领域。预制绿色建材展示、能耗模拟等专业模块,集成项目案例、环保工艺等建筑行业特色内容结构,测试数据包含LEED认证体系查看源码 -
(自适应)英文外贸电子设备网站模板三级子目录基于PbootCMS内核开发的响应式英文网站模板,为外贸企业打造,支持多行业快速适配。通过简洁高效的代码架构,帮助企业低成本构建专业海外形象,实现更好客户触达与订单转化。查看源码 -
帝国cms7.5女性护肤搭配美妆潮流网站源码带数据4.5G本模板专为女性美容护肤行业设计,提供美容护肤、发型设计、女性健康、时尚化妆、娱乐新闻、服饰搭配等女性潮流资讯内容展示。采用帝国CMS7.5开发,同步生成电脑端和手机端,满足用户对美容时尚信息的获取需求。查看源码
| 分享笔记 (共有 篇笔记) |
