您现在的位置是:首页 > 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商品评论30秒时间限制的删除方法
如果商品评论或留言 没有启用验证码的话,ECSHOP默认有30秒的限制,也就是两次评论之间需要间隔30秒。有的店长建站之初
ecshop商品批量上传商品属性自定义的方法
ECSHOP的批量上传功能没有像shopex一样可以根据商品类型导出相应的csv,也就是说批量上传只能上传一般的商品属 ,对于我们自己定义的特殊属 还是要自己一个一个填过去。
ecshop清空购物车时怎么加上提醒
经常有朋友反应,他们在ecshop购物车中修改数量,点“更新购物车”时,经常不小心点中了“清空购物车”,一下子,所以的产品都没了
ecshop邮箱登录的实现方法
邮箱登录a.找到function login(){} ,增加一个邮箱判断is_mail() ,b.如果通过,增读取出username ,c.再通过默认的login功能1.需要修改文件include/modules/integrates/integrate
相关源码
-
(响应式自适应)小学初中作文论文文章资讯博客pbootcms模板下载为中小学作文、教育类网站设计,特别适合展示学生作文、教学资源和写作指导等内容。采用响应式技术,确保在不同设备上都能获得良好的阅读体验。查看源码 -
工商注册财务代理记账类自适应pbootcms网站工商注册、财务代理记账企业打造的数字化门户模板,基于PbootCMS内核深度开发。采用前沿响应式架构,无缝适配手机端触控交互与PC端展示需求查看源码 -
(自适应响应式)动力刀座五金机械设备pbootcms网站源码下载为动力刀座及五金机械企业定制的响应式网站框架,基于PbootCMS系统深度开发,助力传统制造企业实现数字化转型升级。采用手工编写的DIV+CSS前端架构,代码执行效率提升40%。查看源码 -
(PC+WAP)地暖热水器烘干机节能设备网站模板下载为地暖热水器及节能设备企业设计的PbootCMS网站模板,集成产品展示、节能方案介绍、技术参数说明等专业模块。采用PC与移动端同步响应架构查看源码 -
(PC+WAP)绣花刺绣传统手工工艺pbootcms网站源码下载这款基于PbootCMS的网站模板为刺绣和传统手工艺行业设计,采用优雅的布局和精致的细节处理,能够呈现手工艺品的独特韵味和文化内涵。模板结构合理,功能完善,是手工艺从业者展示作品的理想选择。查看源码 -
(自适应)绿色新闻生活百科资讯文章博客类网站pbootcms模板源码本模板基于PbootCMS开发,为生活百科、资讯文章和博客类网站设计。采用清新绿色系风格,提供舒适的阅读体验,同时适配PC和移动设备。适用于生活技巧分享、健康知识传播查看源码
| 分享笔记 (共有 篇笔记) |
