您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop后台分页写法示例分析
魏争博2024-11-28Ecshop商城教程已有人查阅
导读既然是分页,道理都是一样的,不过ecshop前台分页的函数和后台分页的函数不同,后台分页函数为page_and_size(),在admin/includes/lib_main.php里。
既然是分页,道理都是一样的,不过ecshop前台分页的函数和后台分页的函数不同,后台分页函数为page_and_size(),在admin/includes/lib_main.php里。
都是用ajax来进行分页所需参数的传递,用到后台封装的js函数库listtable.js,下面就来说说ajax分页实现的步骤:
1,html页面:引入js{insert_scripts files="../js/utils.js,listtable.js"}
将分页所需的参数用listTable 对象进行属性赋值,如下:
4,之后一步
上面的js函数实际上是这样的链接,act=query&record_count=21&page=1&page_count=2&start=15
所以我们还需要在php页面有一个判断,和输出目标数组一样,只不过这是点击分页后的数组输出。
都是用ajax来进行分页所需参数的传递,用到后台封装的js函数库listtable.js,下面就来说说ajax分页实现的步骤:
1,html页面:引入js{insert_scripts files="../js/utils.js,listtable.js"}
将分页所需的参数用listTable 对象进行属性赋值,如下:
<script type="text/javascript" language="JavaScript">
listTable.recordCount = {$record_count};
listTable.pageCount = {$page_count};
{foreach from=$filter item=item key=key}
listTable.filter.{$key} = '{$item}';
{/foreach}
{literal}
</script>
2,php页面:分页的每个要素实现,给模板页面所需的参数赋值
$card_list = card_list(); //求得目标数组的函数
$smarty->assign('card_list', $card_list['list']);
$smarty->assign('filter', $card_list['filter']);
$smarty->assign('record_count', $card_list['record_count']);
$smarty->assign('page_count', $card_list['page_count']);
$smarty->assign('full_page', 1);
//函数如下,仅作为参考
function card_list()
{
$result = get_filter();
if ($result === false)
{
/* 分页大小 */
$filter = array();
/* 记录总数以及页数 */
$sql = "SELECT COUNT(*) FROM ".$GLOBALS['ecs']->table('card_number');
$filter['record_count'] = $GLOBALS['db']->getOne($sql);
$filter = page_and_size($filter);
/* 查询记录 */
$sql = "SELECT *"."FROM ". $GLOBALS['ecs']->table('card_number') .
' WHERE card_id > 0 order by card_id ASC LIMIT ' . $filter['start'] . ',' . $filter['page_size'];
set_filter($filter, $sql);
}
else
{
$sql = $result['sql'];
$filter = $result['filter'];
}
$all = $GLOBALS['db']->getAll($sql);
return array('list' => $all, 'filter' => $filter, 'page_count' => $filter['page_count'], 'record_count' => $filter['record_count']);
}
3,到这里,分页模板page.html里的函数就能进行参数传递,这些函数大致有
{literal}<a href="javascript:listTable.gotoPageFirst()">{/literal}{$lang.page_first}</a>
{literal}<a href="javascript:listTable.gotoPagePrev()">{/literal}{$lang.page_prev}</a>
{literal}<a href="javascript:listTable.gotoPageNext()">{/literal}{$lang.page_next}</a>
{literal}<a href="javascript:listTable.gotoPageLast()">{/literal}{$lang.page_last}</a>
打开模板一看便知4,之后一步
上面的js函数实际上是这样的链接,act=query&record_count=21&page=1&page_count=2&start=15
所以我们还需要在php页面有一个判断,和输出目标数组一样,只不过这是点击分页后的数组输出。
elseif ($_REQUEST['act'] == 'query')
{
$card_list = card_list();
$smarty->assign('card_list', $card_list['list']);
$smarty->assign('filter', $card_list['filter']);
$smarty->assign('record_count', $card_list['record_count']);
$smarty->assign('page_count', $card_list['page_count']);
make_json_result($smarty->fetch('card_list.htm'), '',
array('filter' => $card_list['filter'], 'page_count' => $card_list['page_count']));
}
到此为止,分页的效果就实现了,这个觉得比前台分页要简单的多,原因是用js来进行参数传递。
本文标签:
很赞哦! ()
相关教程
图文教程
ecshop首页商品怎么显示折扣图标
在网上有很多关于ecshop详细页调用折扣和节省的方法,而首页需要调用折扣的话也可以照葫芦画瓢来修改。整理一下看看是不是可以首先参考一下详细页添加折扣和节省的方法:
ecshop收货人信息中邮件必填选项的删除方法
Ecshop用户下了订单之后有一步,是要求填写收货人信息,其中邮件地址是必须填写的。第一步:找到模板下 flow.dwt,找到email部分的{$lang.require_field}直接去掉。
ecshop商品页取消发表评论时E-MAIL必填方法
ECSHOP商品页取消发表评论时E-MAIL必填方法。ECSHOP的商品详情页,在用户提交评论的时候,那个“E-MAIL”输入框默认是“必填”的。
ecshop用户中心收藏列表商品显示商品缩略图
ECSHOP用户中心收藏列表商品显示商品缩略图修改教程代码号ECSHOP视频教程也再不断的完善与跟进,期待大家的关注!希望在ECSHOP的道路上,代码号与您一路同行!
相关源码
-
(自适应响应式)英文外贸电子产品手机配件网站pbootcms模板专业级外贸网站模板基于PbootCMS内核开发,为电子产品跨境贸易企业设计。采用响应式布局技术,确保电脑、平板、手机等设备访问时自动适配显示效果。数据实时同步管理,一次编辑全平台生效。查看源码 -
(自适应)包装机贴标机设备网站源码免费下载基于PbootCMS内核开发的响应式企业模板,为包装机械、贴标设备等工业领域打造,通过数字化展示提升企业专业形象。查看源码 -
(自适应)幽默笑话脑筋急转弯搞笑趣图博客pbootcms模板下载本模板基于PbootCMS系统开发,专为幽默笑话、搞笑趣图类网站设计。采用轻松活泼的布局风格,突出娱乐内容分享特色,适合各类笑话、段子、搞笑图片等内容展示。查看源码 -
(PC+WAP)化工材料企业环保能源绿色营销型pbootcms模板源码下载本模板为化工材料及环保能源企业设计,采用PbootCMS开发,可展示各类化工产品、环保技术及能源解决方案。查看源码 -
(PC+WAP)茶叶茶艺茶道茶文化pbootcms模网站源码下载本模板基于PbootCMS系统开发,为茶叶企业、茶艺培训机构设计,特别适合展示茶产品、茶道文化等内容。采用响应式技术,确保在不同设备上都能呈现优雅的茶文化氛围。查看源码 -
帝国cms7.5奇闻异事末解之谜模板免费下载带数据本模板基于帝国CMS7.5系统开发,为神秘现象、未解之谜类主题网站设计。包含完整的PC端、移动端及百度MIP站同步生成功能,内置火车头采集规则模块,可快速采集目标站内容资源。整体设计风格神秘大气,符合主题定位。查看源码
| 分享笔记 (共有 篇笔记) |
