微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php毕设记录-分页

PHP-分页

跳转下方网址学习:
https://www.bilibili.com/video/BV1XJ411p7Bb?spm_id_from=333.1007.top_right_bar_window_custom_collection.content.click

分析

通过limit语句取出当前页面的数据

页码 sql语句
1 select * from db limit 0,10
2 select * from db limit 10,10
3 select * from db limit 20,10

一页放10条记录(\(pageSize),起始位置(\)startNm)和页码($pageNm)关系为

\(startNm = (\)pageNm - 1) * $pageSize

编写

1.总记录数

sql语句获得总记录数

select count(*) from db

PHP代码

$rs = MysqLi_query($link,'select count(*) from db');
$row = MysqLi_fetch_row($rs); //MysqLi_fetch_row从结果集中取得一行,并作为枚举数组返回 将资源匹配成索引数组
$recordCount = $rows[0];      //总记录数
2.求总页数
$pageSize = 10;//定义一页显示10条数据
$pageCount = ceil($recordCount/$pageSize);
获得传递的当前页码
$pageNum = isset($_GET['pageNum'])?$_GET['pageNum']:1; //我代码中form的method="post",但这里用$_POST会报错

间的2是echo出来的,用来测试是否出错,之后会注释掉。会是用输出的数据替换掉。

循环输出页码
<table>
    <tr>
      	<td>
    		<?PHP
    			for($i = 1;$i <= $pageCount;$i++){
                    echo '<a href="#?pageNm='.$i.'">'.$i.'</a>&nbsp;';
                }
    		?>
    	</td>
    </tr>
</table>
3.求起始位置
$starNum = ($pageNum - 1)*$pageSize;
4.获取当前页的内容
$paging_sql = "select * from test limit $starNum,$pageSize";
$paging_rs = MysqLi_query($link,$paging_sql);
5.循环输出内容
while($row = MysqLi_fetch_array($paging_rs)){
	$i++;
	echo "<tr>";
	echo "<td>$i</td>
	<td>$row[0]</td>
	<td>$row[1]</td>
	<td>$row[2]</td>
	<td>
	<input type='submit' name='updateNews$row[0]' value='编辑' class='layui-btn layui-btn-normal layui-btn-xs'/>
	<a class='layui-btn layui-btn-normal layui-btn-xs'><i class='layui-icon layui-icon-edit' name='updateNews[0]'></i>编辑</a>
	<a class='layui-btn layui-btn-danger layui-btn-xs'><i class='layui-icon layui-icon-delete'></i>删除</a>
	<input type='submit' name='deleteNews$row[0]' value='删除' class='layui-btn layui-btn-danger layui-btn-xs'/>
	</td>";
	echo "</tr>";
}

这个语句是写在table中的,循环输出列。

layui之类的class是因为使用了layui框架(https://www.layui.site/index.htm)

效果


之后在完善分页a标签的样式

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐