找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索本站精品资源

首页 教程频道 经验杂谈 查看内容

PHP怎么实现分页功能?(图文+视频教程)

作者:模板之家 2020-2-22 17:49 1303人关注

本篇文章主要给大家详细介绍如何使用PHP实现分页功能即对数据库实现分页效果。PHP实现分页功能的操作,对于PHP新手来说或许有一定的难度。下面我们会通过详细的代码示例,为大家一一解说。希望对需要的朋友有一定的 ...

本篇文章主要给大家详细介绍如何使用PHP实现分页功能即对数据库实现分页效果。在内容介绍之前,大家可以先了解下PHP连接数据库的具体方法。那么在这篇文章【PHP怎么连接Mysql数据库?】中已经为大家介绍了具体方法,可供需要的朋友进行参考学习。

PHP实现分页功能的操作,对于PHP新手来说或许有一定的难度。下面我们会通过详细的代码示例,为大家一一解说。希望对需要的朋友有一定的帮助。

PHP实现分页功能的完整代码示例如下:

<?php
$host = '127.0.0.1';
$user = 'root';
$password = 'root';
$dbName = 'qiye';

$pdo = new PDO("mysql:host=$host;dbname=$dbName", $user, $password);
$sql = "select * from user";
$data = $pdo->query($sql)->fetchAll();

$num = 5;
$count = count($data);
$w = ceil($count / $num);

$page = isset($_GET['page']) ? $_GET['page'] : 1;
//var_dump($page);
$offset = ($page - 1) * $num;
//var_dump($offset);
$sql = "select * from user limit $offset,{$num}";

$data = $pdo->query($sql)->fetchAll();

$p = ($page == 1) ? 0 : ($page - 1);
$n = ($page == $w) ? 0 : ($page + 1);

?>
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<form action="">
    <table border="1">
        <tr>
            <th>姓名</th>
            <th>邮箱</th>
            <th>号码</th>
            <th>时间</th>
        </tr>
        <?php foreach ($data as $v): ?>
 <tr>
                <td><?php echo $v['username']; ?></td>
                <td><?php echo $v['email']; ?></td>
                <td><?php echo $v['phone']; ?></td>
                <td><?php echo date("Y-m-d", $v['time']); ?></td>
            </tr>
        <?php endforeach; ?>
 </table>
    <?php
    if ($page==1){
 echo "首页";
    }else{
 echo "<a href='?page=1'>首页</a>";
    }
 if ($p){
 echo "<a href='?page={$p}'>上一页</a>";
    }else{
 echo "上一页";
    }
 if ($n){
 echo "<a href='?page={$n}'>下一页</a>";
    }else{
 echo "下一页";
    }
 if($page== $w){
 echo "尾页";
    }else{
 echo "<a href='?page={$w}'>尾页</a>";
    }
 ?>
</form>
</body>
</html>

在此段代码,我们先是通过PDO方式连接了“qiye”这个数据库,并通过sql语句对其数据进行了查询遍历操作。然后在本地创建一个form表单来显示从数据库中获取到的总信息,这里我们用count函数计算了总条数并赋值予$count 变量。

在没有进行分页操作时,通过浏览器访问到的数据表单结果为如下图:f9b8b00a86b891decfa78e7e4ebad12.png如如果我们想要让form表单中的数据每页只显示五条该怎么操作?大家应该都知道分页效果,基本有四个部分,首页、上一页、下一页和尾页。这里我们用ceil函数计算出总页数并赋值于$w变量。其实只要能掌握PHP跳转分页原理,就可以轻松完成PHP实现分页的功能。

那么在上述完整的代码示例中,已经为大家写出了分页的具体方法。其中将上一页与下一页分别赋予变量$p、$n ,再通过条件语句判断输出分页的四个部分。

PHP跳转分页原理:如果$p即当前页数不是在首页也就是不等于1时,我们就将当前页数减去1,即可实现点击上一页的跳转操作;如果$n即当前页数不是在尾页也就是不等于总页数时,我们就将当前页数加上1,即可实现点击下一页的跳转操作;如果要实现点击首页或者尾页时,实现直接跳转操作,只要将$p或$n的值设置为1或者总页数即可。

最终PHP分页实现效果如下图:

bab42b4d92ba3cedcf7fbb0758c2558.png

d4379f60bbbe999b7c5e86af36541a3.png

以上就是关于PHP实现分页功能的详细介绍,希望对需要的朋友有所帮助!更多相关教程可以访问模板之家(www.mb5.com.cn)mysql视频教程或php视频教程,欢迎参考学习!

以上就是PHP怎么实现分页功能?(图文+视频教程)的详细内容,更多请关注模板之家(www.mb5.com.cn)其它相关文章!


路过

雷人

握手

鲜花

鸡蛋
来自: [db:来源]

全部回复(0)