【教程】PHP+layui制作分页

效果如图所示:

【教程】PHP+layui制作分页

layui版本:2.2.5

        $nPageSize=5;	//每页条数
	$strSQL = "select count(*) as n from msgboard";
	$rst = $pdo->query($strSQL);
	$rstInfo=$rst->fetch();
	$nTotalRecord=$rstInfo["n"];	//总记录条数
	//echo($nTotalRecord);
	if(isset($_REQUEST["page"])){
		$page=$_REQUEST["page"];
	}
	else{
		$page=1;
	}	
	$nTocalPages=ceil($nTotalRecord/$nPageSize);	//总页数
	if($nTocalPages==0){
		$nTocalPages=1;
	}
	if($page<=0){
		$page=1;
	}
	if($page>$nTocalPages){
		$page=$nTocalPages;	
	}
	//echo($page);
	$nStart=($page-1)*$nPageSize;	//起始条数
	//使用limit m,n	m是指记录开始的index,从0开始,表示第一条记录。n是指从第m+1条开始,取n条。
	$strSQL = "select * from msgboard order by id desc limit {$nStart},{$nPageSize}";	//根据id倒叙排序
	//echo($strSQL);
	$rst = $pdo->query($strSQL);

写一个div放置分页工具栏

<div id="paging"></div>

调用layui

layui.use(['laypage','layer'],function(){
	var laypage=layui.laypage
	,layer=layui.layer;
	
	//自定义样式
	laypage.render({
		elem:'paging'
		,limit:<?php echo($nPageSize) ?>//每页条数
		,count:<?php echo($nTotalRecord) ?>//数据总数
		,curr:<?php echo($page) ?>
		,layout:['prev','page','next','count']//自定义排版。可选值有:count(总条目输区域)、prev(上一页区域)、page(分页区域)、next(下一页区域)、limit(条目选项区域)、skip(快捷跳页区域)
		,theme:'#1E9FFF'
		,jump:function(obj,first){			
		//首次不执行
		if(!first){
		location.href="index.php?page="+obj.curr;	
		}
	}
	})
});