分页查询

分页查询封装好的类引用,就好写多了,主页面最终效果

(1)首先就是要显现是内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<table width="50%" cellpadding="0" cellspacing="0" border="1">
            <tr>
                <td>地区代号</td>
                <td>地区名称</td>
                <td>父级代号</td>
            </tr>
      <?php
                $db new MySQLi("localhost","root","123","test3");
                 
                $sql " select * from chinastates ";  //正常显示的表,都练好几遍了,不解释
            
        $result $db->query($sql);
        $attr $result->fetch_all();
        foreach($attr as $v)
        {
            echo "<tr><td>{$v[0]}</td><td>{$v[1]}</td><td>{$v[2]}</td></tr>";
        }
            ?>
        </table>           

 

(2)分页中的参数要有总数,所以要求总数

1
2
3
4
5
$sz " select count(*) from chinastates";   //求总数
                 
$rz $db->query($sz);
$az $rz->fetch_all();
$zt $az[0][0];<br>echo $zt;

可以输出,看一下  

(3)引入封装好的分页的类,并且造新对象

1
2
//调用封装好的分页类
include("./test16_fenye.class.php");       
1
2
3
$fenye new Page($zt,10);  //造新对象,参数就是写总条数,显示的条数
                 
$sql " select * from chinastates ".$fenye->limit;   //记得写完语句要加空格再拼语句        

这样就显示了十条数据:

(4)最后显示按钮就可以了,照常的引用分页就可以:显示上一页,下一页,跳转等

1
2
3
<?php
  echo $fenye->fpage();   //调用分页信息并输出,想显示什么样就可以在括号中添加索引号
?> 

1
2
3
<?php
  echo $fenye->fpage(5,6,7);   //调用分页信息并输出,想显示什么样就可以在括号中添加索引号
?> 

(5)分页查询,查询关键字,并且使结果能够分页显示:传值给本页面

1
2
3
4
5
<form action="test16_fenye.php" method="get">
       关键字:<input type="text" name="key" value="<?php echo $key ?>"/>  //value值是让输入的值还存在
       <input type="submit" value="查询" />
</form>
        

写查询条件:以前都讲过

1
2
3
4
5
6
7
$tj " 1=1 ";
$key "";
if(!empty($_GET["key"]))
{
    $key $_GET["key"];
    $tj " areaname like '%{$key}%' ";
}

要在后面查总数和表的语句上加上写的查询条件

1
2
$sz " select count(*) from chinastates where ".$tj;  //求条数和
$sql " select * from chinastates where ".$tj .$fenye->limit;   //分页

原文地址:https://www.cnblogs.com/zhangkeyu/p/6665645.html