thinkphp中的分页查询

本文详细介绍了在ThinkPHP框架中如何实现分页查询,包括使用内置的分页类、设置参数、获取并显示分页链接等关键步骤,旨在帮助开发者高效地处理大量数据的展示问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分页查询
在控制器中写一个方法studentlist分页查询数据库中的学生信息,每页显示十行,在模板中显示分页信息,点击页码时,显示该页的记录。

第一步:写studentlist方法,代码如下
<?php
public function studentlist($p=1){
		$pagesize = 10;//每页行数
		$model = M('student');
		$count = $model->count();
		$Page = new \Think\Page($count,$pagesize); //实例化分页类 传入总记录数和每页显示的记录数
		$Page->lastSuffix = false;//last为“末尾”显示

		$Page->setConfig('prev','上一页');
		$Page->setConfig('next','下一页');
		$Page->setConfig('last','末尾');
		$Page->setConfig('first','首页');
		$Page->setConfig('theme',"%UP_PAGE% %FIRST% %LINK_PAGE% %DOWN_PAGE%
%END%");//改变位置
		$show = $Page->show();//生成分页的链接
		//查询数据
		$student = $model->field('no,name,sex')->page("{$p},{$pagesize}")->select();
		$this->assign('page',$show);
		$this->assign('student',$student);
		$this->display('studentlist');
	}
?>

第二步,模板文件代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>page</title>
	<style type="text/css">
	.page{
		width:1000px;
	}
	.page span{
		width:100px;
		background:#eee;
		padding:5px;
		margin-left: 10px;
	}
	.page a{
		width:100px;
		border:solid black 1px;
		padding:5px;
		color: red;
		margin-left: 10px;
		text-decoration: none;
		outline: none;
	}
	</style>
</head>
<body>
	<table>
	<tr><td>学号</td>
		<td>姓名</td>
		<td>性别</td>
		</tr>
		<volist name="student" id="row">
		<tr>
		<td><{$row.no}></td>
		<td><{$row.name}></td>
		<td><{$row.sex}></td>
		</tr>
		</volist>
	</table>
	<ul class="page"><{$page}></ul>
</body>
</html>
数据库中内容:

结果如下:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值