分析ecshop的分页使用原理
2009-08-07 16:05 来源:www.chinab4c.com 作者:ecshop专家
下午和朋友做了个分页的的东西,很简单,而且是在模板中实现的。但是朋友一定要追着我问分页原理,分析ecshop分页如何用?时间紧张,没时间去研究,就和他简单的谈了谈如何使用ecshop分页面.
比如评论里面.将所有的评论检索出来,进行分页面.还好,不需要带如何参数.先看下面函数.
function get_comments($num,$start)
{
$sql =" SELECT * FROM ecs_comment WHERE status = 1 AND parent_id = 0 and comment_type=0 ORDER BY add_time DESC limit $start, $num";
//echo $sql;
//$res = $GLOBALS['db']->SelectLimit($sql, $num, $start);
$res = $GLOBALS['db']->getAll($sql);
$comments = array();
foreach ($res AS $idx => $row)
{
$comments[$idx]['user_name'] = $row['user_name'];
$comments[$idx]['content'] = $row['content'];
$comments[$idx]['id_value'] = $row['id_value'];
$comments[$idx]['add_time'] = local_date("Y-m-d H:i:s",$row['add_time']);
$comments[$idx]['goods_name'] = $GLOBALS['db'] -> getOne("select goods_name from ecs_goods where goods_id = ".$row['id_value']);
$comments[$idx]['shop_price'] = $GLOBALS['db'] -> getOne("select shop_price from ecs_goods where goods_id = ".$row['id_value']);
$comments[$idx]['replay'] = $GLOBALS['db'] -> getOne("select content from ecs_comment where parent_id = ".$row['comment_id']);
$comments[$idx]['shop_price'] = price_format($comments[$idx]['shop_price']);
}
return $comments;
}
取部分分页数据,条数用limit控制,$start,$num表示分页起始位置.
$sql = "SELECT COUNT(*) FROM ecs_comment";
$record_count = $GLOBALS['db']->getOne($sql);
$page = isset($_REQUEST['page']) ? intval($_REQUEST['page']) : 1;
$pager = get_pager('ping.php', array(), $record_count, $page, 10);
$msg_lists = get_comments(10, $pager['start']);
$GLOBALS['smarty']->assign('rand', mt_rand());
$GLOBALS['smarty']->assign('pager', $pager);
$GLOBALS['smarty']->assign('my_comments',$msg_lists);
把分页的数据拿过来,给smarty,取页面ID.这里有ecshop中的get_pager函数,来处理分页.
最后在模板中加上翻页模板
<!-- #BeginLibraryItem "/library/pages.lbi" --><!-- #EndLibraryItem -->
完成了分页操作.
来源:中国B4C电子商务
最近更新
常用插件
- ecshop降价通知登记插件
ecshop降价通知登记插件,主要是为了方便某些客户,对商品价格要求比...
- ecshop红包修改成满多少减
我们在长期使用ecshop的时候,我们可以发现。ecshop的红包是一个非常强...
- ecshop分类树中统计商品数
最近忙于开发其他项目,在不少朋友不断要求和催促的情况下,做出了该小...
- ecshop购物车功能改进[插件
ecshop购物车功能改进[插件套餐]主要是我们最近开发工作和开发项目中。...
- ecshop通用红包编码
很多时候,为了结合促销,必须扩展一下ecshop的红包功能。ecshop的红包...