php + smarty 分页(附layui分页)

/*php部分*/

//分页方法
function page_list($sql,$num) //参数:查询语句,每页显示条数
{
include ('../configs/db.init.php');
$sql = $sql;
$result = $mysqli->query($sql);
$count = $result->num_rows; //获得记录总条数
$num=$num; //每页显示条数
$pagecount=ceil($count/$num);//共计需要分多少页
//获取传来的页码
$page = isset($_REQUEST['page']) ? $_REQUEST['page'] : '';
if($page==""||$page<1){
$page=1;
}
if($page>$pagecount){
$page=$pagecount;
}

$start=($page-1)*$num; //开始位置
$sql=$sql." limit $start,$num"; //从开始位置查询$num条
$result = $mysqli->query($sql);
if($result)
{
$result = $result->fetch_all();
}
return array('result'=>$result,'pagecount'=>$pagecount,'page'=>$page,'count'=>$count,'num'=>$num);//返回结果为:记录数和总页数
}

/*模板部分*/
<div class="admin-table-page">
<div id="page" class="page">
</div>

</div>

<script>
//page
laypage({
cont: 'page',
pages: '<{$pagecount}>' //总页数
,
groups: 4 //连续显示分页数
,

curr: <{$page}>,

jump: function(obj, first) {
//得到了当前页,用于向服务端请求对应数据
var curr = obj.curr;
if(!first) {
//layer.msg('第 '+ obj.curr +' 页');
window.location.href='channel.php?action=select&channel=<{$channel}>&page='+curr;
}
}

});
</script>
 

 
原文地址:https://www.cnblogs.com/haohaosky/p/6508440.html