简介 目录 评价 推荐
  • 百亿佳和 2022-12-15
    分页的逻辑不错!写了一下不错!

    蛮好的。

    1回答·295浏览
  • qq_慕丝6230790 2021-11-13
    首行居中

    用align=center

    1回答·371浏览
  • weixin_宝慕林5007077 2021-06-01
    显示不出来,是不是要在MySQL里面加内容呢

    shide

    1回答·491浏览
  • 读书人ok 2021-05-29
    这啥意思啊
    1回答·526浏览
  • weixin_慕哥0467611 2020-07-17
    数据库里的表和数据是要自己写进去吗
    1回答·911浏览
  • Mr_zhaoyouqian 2020-02-21
    数据库内容自动更新

    你把更新方法加一个定时器不就得了?

    1回答·591浏览
  • 无缘之间 2019-11-14
    点击当前页数不能跳转
    1回答·896浏览
  • 慕前端6476978 2019-04-25
    麻烦老师提供下课件源码下载
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
    </head>
    <body>
    
    <?php
    /**
     * Created by PhpStorm.
     * User: 123
     * Date: 2020/2/14
     * Time: 12:16
     */
    
    /*1.传入页码*/
    $page = $_GET['p'];
    
    /*2.根据页码取出数据, php -> mysql*/
    $host = "localhost";
    $username = "root";
    $password = "123456";
    $db = "page";
    $pageSize = 3;
    
    $showPage = 5;
    
    //连接数据库
    $conn = mysqli_connect($host, $username, $password, $db);
    if (!$conn) {
        var_dump("连接失败");
    }
    
    //设置数据库的编码格式,防止乱码
    mysqli_query($conn, "SET NAMES UTF8");
    
    //编写sql获取分页数据 SELECT * FROM 表名 LIMIT 起始位置,显示条数
    $sql = "SELECT * FROM test LIMIT " . ($page - 1) * $pageSize . ",{$pageSize}";
    
    //把sql语句传送数据中
    $result = mysqli_query($conn, $sql);
    
    //处理数据
    echo "<table border='1' cellspacing='0' width='40%' class='margin: 0 auto'>";
    echo "<tr><td>ID</td><td>name</td></tr>";
    while ($row = mysqli_fetch_assoc($result)) {
        echo "<tr><td>{$row['id']}</td><td>{$row['name']}</td></tr>";
    }
    echo "</table>";
    
    //释放结果,关闭连接
    mysqli_free_result($result);
    
    //获取数据总数
    $total_sql = "SELECT COUNT(*) FROM test";
    $total_result = mysqli_fetch_assoc(mysqli_query($conn, $total_sql));
    $total = $total_result['COUNT(*)'];
    $total_page = ceil($total / $pageSize);
    
    mysqli_close($conn);
    
    //3.显示数据 + 分页条
    $page_banner = '';
    if ($page > 1) {
        $page_banner .= "<a href='" . "{$_SERVER['PHP_SELF']}?p=1" . "'>首页</a>";
        $page_banner .= "<a href='" . "{$_SERVER['PHP_SELF']}?p=" . ($page - 1) . "'>上一页</a>";
    }
    
    //初始化数据
    $start = 1; //开始页面
    $end = $total_page; //结束页面
    $pageOffset = ($showPage - 1) / 2;
    if ($total_page > $showPage) {  //如果总页面大于显示的页面
        if ($page > $pageOffset + 1) { //如果当前页面大于偏移量
            $page_banner .= "...";
        }
        if ($page > $pageOffset) { //当前页大于偏移量
            $start = $page - $pageOffset;
            $end = $total_page > $page + $pageOffset ? $page + $pageOffset : $total_page;
        } else {
            $start = 1;
            $end = $total_page > $showPage ? $showPage : $total_page;
        }
        if ($page + $pageOffset > $total_page) {
            $start = $start - ($page + $pageOffset - $end);
        }
    }
    
    for ($i = $start; $i <= $end; $i++) {
        $page_banner .= "<a href='" . "{$_SERVER['PHP_SELF']}?p={$i}" . "'>{$i}</a>";
    
    }
    
    //尾部省略
    if ($total_page > $showPage && $total_page > $page + $pageOffset){
        $page_banner .= "...";
    }
    
    if ($page < $total_page) {
        $page_banner .= "<a href='" . "{$_SERVER['PHP_SELF']}?p=" . ($page + 1) . "'>下一页</a>";
        $page_banner .= "<a href='" . "{$_SERVER['PHP_SELF']}?p={$total_page}" . "'>尾页</a>";
    }
    $page_banner .= "总页数{$total_page},";
    $page_banner .= "<form action='demo1.php' method='get'>";
    $page_banner .= "到第<input type='text' size='2' name='p'>页";
    $page_banner .= "<input type='submit' value='确定'>";
    $page_banner .= "</form>";
    
    
    
    echo $page_banner;
    ?>
    </body>
    
    </html>


    2回答·365浏览
  • 小小单身 2019-04-15
    为什么limit查询报错语法错误?
    1回答·2228浏览
  • Mcfly46 2019-02-20
    那个计算偏移量哪里有点BUG

    <!DOCTYPE html>

    <html>

    <head>

    <title></title>

    <meta charset="utf-8">

    <link rel="stylesheet" type="text/css" href="css/style.css">

    </head>

    <body>

    <?php

    include "conn.php";

    $page = isset($_GET['p']) ? $_GET['p'] : '';

    $page_size = 10;

    $page_from = ($page-1) * $page_size;

    $sql = "SELECT * FROM message LIMIT $page_from, $page_size";

    $res = $conn->query($sql);

    ?>

    <table class="one" border="1">

    <tr>

    <td>id</td><td>用户</td><td>内容</td><td>时间</td><td>操作</td>

    </tr>

    <?php while($row = $res->fetch_assoc()){ ?>

    <tr>

    <td><?php echo $row['id']; ?></td>

    <td><?php echo $row['username']; ?></td>

    <td><?php echo $row['mes']; ?></td>

    <td><?php echo $row['mestime']; ?></td>

    <td><a href="#">修改</a> | <a href="#">删除</a></td>

    </tr>

    <?php } ?>

    </table>

    <br /><br />

    <div class="page">

    <?php

    $page_banner = "";

    $sql = "SELECT * FROM message";

    $res = $conn->query($sql);

    $total_records = $res->num_rows;

    $total_pages = ceil($total_records / $page_size);


    $start = $page-5;

    $end = $page+4;

    if($page < 6){

    $start = 1;

    $end = 10;

    }

    if($page > $total_pages-4){

    $start = $total_pages-9;

    $end = $total_pages;

    }

    if($total_pages < 10){

    $start = 1;

    $end = $total_pages;

    }


    if($page > 1){

    $page_banner = "<a href='page.php?p=1'>首页</a>";

    $page_banner .= "<a href='".$_SERVER['PHP_SELF']."?p=".($page-1)."'>上一页</a>";

    }

    for($i=$start; $i<=$end; $i++){

    if($page == $i){

    $page_banner .= "<span class='current'>{$i}</span>";

    }else{

    $page_banner .= "<a href='page.php?p=".$i."'>".$i."</a>";

    }

    }

    if($page < $total_pages){

    $page_banner .= "<a href='".$_SERVER['PHP_SELF']."?p=".($page+1)."'>下一页</a>";

    $page_banner .= "<a href='page.php?p=$total_pages'>尾页</a>";

    }

    echo $page_banner;

    echo "共".$total_pages."页";

    ?>

    </div>

    </body>

    </html>


    2回答·982浏览
  • qq_扮縯尛醜_0 2019-01-13
    问什么我总页数老是为0

    自己解决了

    1回答·442浏览
  • 天雨潇潇 2018-12-20
    mypage.php无法跳转

    贴代码

    1回答·1189浏览
  • 无心人哦 2018-11-10
    找不到密码怎么回事

    会不会是数据库密码错误了

    1回答·995浏览
  • 卑鄙与我 2018-09-21
    关于$total= $total_result[0]的疑问?

    你可以通过使用var_dump($total_result)查看数组内容,通过看对应的键就可以知道该键对应的值,这里的0键对应的应该是id 

    1回答·1333浏览
  • 慕设计2812226 2018-08-06
    都学完了,有博客,需要的可以看看
    0回答·560浏览
  • 慕设计2812226 2018-08-05
    计算总页数,跪求大神指教
    我跟你出错是一样的啊


    4回答·1599浏览
  • 空中鱼儿 2018-07-08
    用zend studio编写代码出错

    https://img2.mukewang.com/5b5a9ec80001ec7a09710069.jpg这个错误

    2回答·1286浏览
  • 慕尼黑9899992 2018-05-22
    $total= $total_result[0];
    已采纳 cuisf 的回答

    执行完$total_result = mysql_fetch_array(mydqli_query($total_sql));

    后的得到的是一个数组

    array{

                [0] =>数据数

                [counte(*)] =>数据数

    }

    所以你只需要取其中的一个就行了的

    1回答·1498浏览
  • hqq尘子 2018-05-19
    mysqli_fetch_assoc()方法参数与查询语句的不融洽

    $sql="SELECT * FROM empmanage LIMIT ".(($page-1)*10).",10"; 像我这样写是没问题的

    4回答·1782浏览
  • hqq尘子 2018-05-19
    php 处理分页时 获取当前页页码

    我个人觉得,这个p可以用,但是会报错。为什么这么说呢。因为:

    1. 在地址框里文件名后,输入?p=1  后回车,是有显示的;

    2. 用$pageSize=10定义好单页展示条数,用sql语句分页:$sql="SELECT * FROM article LIMIT " .(($page-1)*$pageSize) .",".($pageSize); 页面分好之后,地址框输入 ?p=数值,回车会跳到指定页面;

    3. 这里我出现一个问题,就是浏览器打开php文件,地址框不带p的值,会报错,报错的地方,就是接收p的语句,我的是:$page=$_GET['p'];    。但是,跳转页面之后,就不再报错了。我怎么知道的呢,因为我先把分页条做了出来,不管报错,点击页码跳转到任何一个页面,只要地址框出现 ?p=数值,就不再报错了。

    所以我说,想直接获取页码,好像不太行,但是之后的操作可以进行。

    1回答·3322浏览
  • 慕雪6897041 2018-05-11
    为什么会覆盖掉首页和上一页

    等号前面一个.

    1回答·1236浏览
  • 会偷鱼的猫 2018-04-22
    分页中的p如果在地址栏中输入p是字符串或者大于总页数呢
    if($page<1 || $page>$total_page || !preg_match("/^\d*$/",$page)){  	echo "页码不正确";  	die();  }


    2回答·1334浏览
  • 慕田峪2038597 2018-04-12
    要不要把浮点型转化为整形
    已采纳 会偷鱼的猫 的回答

    可以用int把浮点型自己强制转换成整形,不转化的话应该也可以但是考虑到浮点型有精度丢失还是转一下比较好

    1回答·1610浏览
  • 西街光影 2018-01-22
    课程数据库哪里下载

    下载一个WampServer就好了


    2回答·691浏览
  • hacker_m 2017-11-30
    分页问题,如果你的分页比如page.php?p=0 或者page.php?p=-10这类的负数
    已采纳 慕神6534865 的回答

    如果是0改为1,大于总页数让page等于总页数

    4回答·1809浏览
  • c放过自己 2017-10-13
    如果$total_page<$show_page显示就会出现0页码

    如果是按讲师写的话只有在$total_page>$showpage才会进入if里,当$total_page<$show_page时不会进if,这时$start=1,你看看for循环是不是有问题或者$start初始值有没有给1

    1回答·785浏览
  • 祖国大花朵 2017-09-19
    实现图片分页呢

    图片分页原理是一样的

    1回答·1356浏览
  • Seabiscuit_ 2017-09-06
    这个代码在哪里可以找到啊?

    我刚刚打完,你要我代码吗

    1回答·1335浏览
  • qq_責责_0 2017-08-12
    都能运行但是每一页里边的数据不一样多是因为什么?
    1回答·1260浏览
  • Joper 2017-07-12
    请教一下为什么打印出来是false 哪里写错了吗

    $sql="SELECT * FROM test LIMIT ".(($page-1)*10).",10"; 加个括号

    2回答·1549浏览
数据加载中...
开始学习 免费