PHP实现数据分页显示的简单实例

时间:2022-11-21 15:36:43

分页在后台管理中是经常使用的功能,分页显示方便大量数据的管理。

实例代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>用户列表</title>
</head>
<body>
<?php
  $con = mysql_connect("localhost","root","");
  
  mysql_query("set names utf8");
  mysql_select_db("zhiye",$con);
  
  $pageSize = 1;   //每页显示的数量
  $rowCount = 0;   //要从数据库中获取
  $pageNow = 1;    //当前显示第几页
  
  //如果有pageNow就使用,没有就默认第一页。
  if (!empty($_GET['pageNow'])){
    $pageNow = $_GET['pageNow'];
  }
  
  $pageCount = 0;  //表示共有多少页
  
  $sql1 = "select count(id) from user";
  $res1 = mysql_query($sql1);
  
  if($row1=mysql_fetch_row($res1)){
    $rowCount = $row1[0];
  }
  
  //计算共有多少页,ceil取进1
  $pageCount = ceil(($rowCount/$pageSize));
  
  //使用sql语句时,注意有些变量应取出赋值。
  $pre = ($pageNow-1)*$pageSize;
  
  $sql2 = "select * from user limit $pre,$pageSize";
  $res2 = mysql_query($sql2);
 
  while($row=mysql_fetch_assoc($res2)){
    echo $row['user_name']."<br>";
    echo $row['name']."<br>";
    echo $row['email']."<br>";
    echo $row['password']."<br>";
    echo $row['tel']."<br>";
  }
  for ($i=1;$i<=$pageCount;$i++){
    echo "<a href='userList.php?pageNow=$i'>$i</a>&nbsp;";
  }
?>
</body>
</html>

当有大量数据时,就不能使用上述方法。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
  $con = mysql_connect("localhost","root","");
  
  mysql_query("set names utf8");
  mysql_select_db("zhiye",$con);
  
  $pageSize = 1;   //每页显示的数量
  $rowCount = 0;   //要从数据库中获取
  $pageNow = 1;    //当前显示第几页
  
  //如果有pageNow就使用,没有就默认第一页。
  if (!empty($_GET['pageNow'])){
    $pageNow = $_GET['pageNow'];
  }
  
  $pageCount = 0;  //表示共有多少页
  
  $sql1 = "select count(id) from user";
  $res1 = mysql_query($sql1);
  
  if($row1=mysql_fetch_row($res1)){
    $rowCount = $row1[0];
  }
  
  //计算共有多少页,ceil取进1
  $pageCount = ceil(($rowCount/$pageSize));
  
  //使用sql语句时,注意有些变量应取出赋值。
  $pre = ($pageNow-1)*$pageSize;
  
  $sql2 = "select * from user limit $pre,$pageSize";
  $res2 = mysql_query($sql2);
  
  //$sql = "select * from user";
  //$res = mysql_query($sql,$con);
 
  while($row=mysql_fetch_assoc($res2)){
    echo $row['user_name']."<br>";
    echo $row['name']."<br>";
    echo $row['email']."<br>";
    echo $row['password']."<br>";
    echo $row['tel']."<br>";
  }
  if($pageNow>1){
    $prePage = $pageNow-1;
    echo "<a href='userList.php?pageNow=$prePage'>pre</a>&nbsp;";
  }
  if($pageNow<$pageCount){
    $nextPage = $pageNow+1;
    echo "<a href='userList.php?pageNow=$nextPage'>next</a>&nbsp;";
    echo "当前页{$pageNow}/共{$pageCount}页";
  }
  echo "<br/><br/>";
  ?>
 
  <form action="userList.php">
    <input type="text" name="pageNow">
    <input type="submit" value="GO">
  </form>

以上这篇PHP实现数据分页显示的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。