您现在的位置是:首页 > 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商品价格将属性价格改为直接价非加价修改的方法
代码号之ecshop商品价格将属性价格改为直接价格,而非本店价格加属性价格等于总价修改教程ecshop将属性价格改为直接价格,而非加价打开文件
ecshop会员注册登陆才显示商品价格的实现方法
ecshop登陆后价格可见,会员注册登陆才能显示价格打开模版文件夹里面的goods.dwt
ecshop其他页面广告轮播的代码示例
利用后台的广告位置广告列表功能:先添加一个广告位置 查看它的id//取的其他页面flash轮播
ecshop实现用户自动登陆的方法
让Ecshop网店系统用户户自动登陆,打开ecshop includes/init.php文件,可以发现Ecshop系统判断用户的SESSION不存在的时候会去读取存储在COOKIES里面的值。如下代码片段所示:
相关源码
-
pbootcms模板(PC+WAP)APP应用软件下载类官网源码为APP应用软件官网打造的响应式解决方案,PC端与移动端(WAP)数据实时同步,一次更新全网生效,满足多终端用户无缝体验需求。查看源码 -
自适应电子科技类产品公司pbootcms网站模板基于PbootCMS内核开发,为电子科技类企业设计,适用于电子产品展示、企业官网等场景。该模板采用开源架构,用户可自由访问和修改源码,灵活适配各类行业需求,无需二次开发成本查看源码 -
(自适应响应式)html5文章资讯新闻博客pbootcms网站模板下载本模板基于PbootCMS系统开发,为新闻资讯、博客类网站设计,特别适合各类文章内容的发布与管理。采用响应式技术,确保在不同设备上都能获得良好的阅读体验。查看源码 -
(自适应响应式)HTML5电脑手机电子数码产品配件pbootcms模板下载本模板为电脑配件、手机配件及数码周边产品企业设计,基于PbootCMS内核开发。采用现代化响应式布局,适配各类移动设备,能够专业展示各类电子产品配件参数、应用场景和技术特点。模板内置多种产品展示模块,满足不同类型配件企业的展示需求。查看源码 -
(自适应)html5宽屏电线电缆材料加工制造类企业网站源码下载本模板基于PbootCMS系统开发,特别适合电线电缆、电缆材料及相关加工制造类企业使用。采用HTML5宽屏设计,能够展示各类电缆产品的技术参数和规格详情,帮助客户全面了解产品特性。查看源码 -
(自适应响应式)教育培训机构集团网站pbootcms源码下载本模板基于PbootCMS系统开发,为教育培训机构设计,特别适合展示课程体系、师资团队和教学成果。采用响应式技术,确保在各类设备上都能提供良好的浏览体验。查看源码
| 分享笔记 (共有 篇笔记) |
