页面首页、上一页、下一页、尾页设置

<?php
$page = empty ($_GET['page']) ? 1: $_GET['page'] ;
include "connect.php";
// $conn = mysqli_connect('localhost','root','');
// if(!$conn)
// {
//     exit('数据库连接失败');
// }

mysqli_set_charset($conn ,'utf8');
mysqli_select_db($conn ,'test');
//----------------------------------------分页开始---
// $page = 1;
//求出来总条数
$sql = "select count(*) as count from liuyan";  //获取当前数据表中有多少条数据 可能
$result = mysqli_query($conn,$sql);
$pageRes = mysqli_fetch_assoc($result);
$count = $pageRes['count'];
//每页显示数, 假设每页显示5条数据
$num = 5;
//根据每页显示数可以求出总页数
$pageCount = ceil($count/$num);
//根据总页数求出偏移量
$offset = ($page-1) * $num;
//----------------------------------------分页结束---


 $sql = "select * from liuyan limit " .$offset . ',' . $num ; //注意limit 要和"之间有空格!!!!!!!!!!要不然出错
// $sql = "select * from liuyan";

$obj = mysqli_query($conn, $sql);
echo '<a href="add.php">添加</a>';
echo '<table width = "600" border="1">';
    echo '<th>id</th><th>username</th><th>address</th><th>sex</th><th>age</th><th>date</th><th>option</th>';    //类型
        while($rows = mysqli_fetch_assoc($obj))
        {
        echo '<tr>';
            echo '<td>'.$rows['id'].'</td>';
            echo '<td>'.$rows['username'].'</td>';
            echo '<td>'.$rows['address'].'</td>';
            echo '<td>'.$rows['sex'].'</td>';
            echo '<td>'.$rows['age'].'</td>';
            echo '<td>'.$rows['date'].'</td>';
            echo '<td><a href="del.php?id='.$rows['id'].'" >删除</a>/<a href="update.php?id='.$rows['id'].'">修改</a></td>';//id='.$rows['id'].'  获取到操作组的id
         echo '</tr>';   
        }
echo '</table>';
//
$next = $page + 1;
$prev = $page - 1;
if($prev < 1)
{
    $prev = 1; 
}
if($next > $pageCount)
{
    $next = $pageCount;
}
mysqli_close($conn);
?>
<!-- 对按钮进行 -->
<a href="index.php?page=1">首页</a>&nbsp;&nbsp;&nbsp;
<a href="index.php?page=<?=  $prev;?>">上一页</a>&nbsp;&nbsp;&nbsp;
<a href="index.php?page=<?= $next; ?>">下一页</a>&nbsp;&nbsp;&nbsp;
<a href="index.php?page=<?= $pageCount; ?>">尾页</a>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的分页算法的实现,包括上一页、下一页首页尾页功能。假设每页显示n条记录。 ``` <% // 获取请求参数中的页码数 int currentPage = request.getParameter("page") == null ? 1 : Integer.parseInt(request.getParameter("page")); // 计算总记录数和总页数 int totalRecords = 100; // 假设总记录数为100 int totalPages = (totalRecords + n - 1) / n; // 计算上一页和下一页的页码数 int prevPage = currentPage - 1 < 1 ? currentPage : currentPage - 1; int nextPage = currentPage + 1 > totalPages ? currentPage : currentPage + 1; // 计算首页尾页的页码数 int firstPage = 1; int lastPage = totalPages; // 计算当前页要显示的记录范围 int startRecord = (currentPage - 1) * n + 1; int endRecord = currentPage * n > totalRecords ? totalRecords : currentPage * n; %> <!-- 在页面中显示分页信息和翻页链接 --> <p>共 <%=totalPages%> 页,当前第 <%=currentPage%> 页,共 <%=totalRecords%> 条记录。</p> <p> <a href="?page=<%=firstPage%>">首页</a> <a href="?page=<%=prevPage%>">上一页</a> <a href="?page=<%=nextPage%>">下一页</a> <a href="?page=<%=lastPage%>">尾页</a> </p> <p>显示第 <%=startRecord%> 条到第 <%=endRecord%> 条记录。</p> ``` 该代码中,我们首先获取请求参数中的页码数,然后计算总记录数和总页数。接着,我们根据当前页码数计算上一页和下一页的页码数,以及首页尾页的页码数。最后,我们根据当前页码数计算要显示的记录范围,并在页面中显示分页信息和翻页链接。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值