上文只是介绍了最基本的分页程序,假设要对搜索留言得到的结果进行分页,则在上述分页程序只能正确的显示第一页,当赢湖转到其他页面后又会显示所有的记录,而不是查询得到的记录。这是因为单机分页连接后没有将用户输入的查询关键字传递给其他页。
为此,可以杂获取了用户输入的关键字之后,一方面将它传递给SQL语句进行查询,另一方面将其保存在分页链接的URL参数(或表单隐藏域)中。具体说来,可以给分页链接增加一个URL参数,将该URL参数的值设置为查询关键字以传递给其他页。
首先是全部内容的一个分页,每个页面的显示数为6 fenye1.php
0)) { //获取页码并检查是否非法 $Page = $_GET['page']; }else{ $Page = 1; //如果获取不到页码则显示第1页 } //设置每页显示记录数 $PageSize = 6; //创建统计记录总数的结果集 $result = mysql_query("select * from `lyb1`",$conn); $RecordCount = mysql_num_rows($result);//获取记录总数 $PageCount = ceil($RecordCount/$PageSize);//计算总共有多少页 $sql = "select * from `lyb1` limit ".($Page-1)*$PageSize.",".$PageSize; echo $sql; $result = mysql_query($sql,$conn)or die("错误".mysql_error());//将某一页的记录放入结果集 echo $result; ?>分页显示
序号 | 标题 | 内容 | 作者 | 邮箱 | 删除 | 更新 |
---|---|---|---|---|---|---|
删除 | 更新 |
显示查询结果的页面,每一页的结果数为3 fenye1_resault.php 由于涉及到查询类型,故也要把查询类型写到URL当中
第一页
0)) { //获取页码并检查是否非法 $Page = $_GET['page']; }else{ $Page = 1; //如果获取不到页码则显示第1页 } //设置每页显示记录数 $PageSize = 3; //创建统计记录总数的结果集 $keyword=trim($_GET['keyword']);//获取输入的关键字 $sel=$_GET['sel'];//获取选择的查询类型 $sql="select * from `lyb1`"; if ($keyword<>"") { $sql=$sql." where $sel like '%$keyword%'"; //构造查询语句 } $result=mysql_query($sql)or die("数据查询错误".mysql_error()); $RecordCount = mysql_num_rows($result);//获取记录总数 $PageCount = ceil($RecordCount/$PageSize);//计算总共有多少页 $sql = $sql." limit ".($Page-1)*$PageSize.",".$PageSize; echo $sql; $result1 = mysql_query($sql,$conn)or die("错误".mysql_error());//将某一页的记录放入结果集 echo $result1; ?>分页显示
序号 | 标题 | 内容 | 作者 | 邮箱 | 删除 | 更新 |
---|---|---|---|---|---|---|
删除 | 更新 |