首页 >社区问答列表 >新闻发布详情分页

新闻发布详情分页

赞助会员专享特权

请问前台文章列表页面怎么在分页那里首页输出最新的数据,然后倒序下去啊?你这个按新闻的页面来的话首页显示的是最之前的数据啊。

  • 梁温柔
  • 梁温柔     2018-04-11 17:35:14 4楼

    自己摸索解决了,把这条/* 获取limit的第一个参数的值 offset ,假如第一页则为(1-1)*10=0,第二页为(2-1)*10=10。 (传入的页数-1) * 每页的数据 得到limit第一个参数的值*/
    $sql="select * from article limit $offset,$num ";改成下面这条就行了啊哈哈

    $sql="select * from article order by id desc limit $offset,$num ";

    +0 添加回复

  • 回复
  • 梁温柔
  • 梁温柔     2018-04-11 16:48:09 3楼

     <?php
    //分页功能
    //连接数据库
    require_once("connect.php");
    $page = isset($_GET['page'])?intval($_GET['page']):1;//设置当前页数,没有则设置为1
    $num=3;//每页显示3条数据
    /*
    首先我们要获取数据库中到底有多少数据,才能判断具体要分多少页,总页数 具体的公式就是
    总数据数 除以 每页显示的条数,有余进一 。
    也就是说10/3=3.3333=4 有余数就要进一。
    */
    $sql="select * from article";
    $result=mysqli_query($conn,$sql);
    $total=mysqli_num_rows($result);//查询数据的总条数
    $pagenum=ceil($total/$num);//获得总页数
    //假如传入的页数参数page 大于总页数 pagenum,则显示错误信息
    if($page>$pagenum || $page == 0){
     echo "<script>alert('没有内容了');history.go(-1);</script>";
     exit;
    }
     $offset=($page-1)*$num;
    /* 获取limit的第一个参数的值 offset ,假如第一页则为(1-1)*10=0,第二页为(2-1)*10=10。 (传入的页数-1) * 每页的数据 得到limit第一个参数的值*/
    $sql="select * from article limit $offset,$num ";
    $info=mysqli_query($conn,$sql); //获取相应页数所需要显示的数据
    //获取最新添加的前六条数据
    $sql_new="select id,title from article order by dateline desc limit 0,6 ";
    $info_title=mysqli_query($conn,$sql_new);
    ?>

    +0 添加回复

  • 回复

    这个是分页的,我所能想到的就是把这条$page = isset($_GET['page'])?intval($_GET['page']):1;//设置当前页数,没有则设置为1 后面的1数值变成最大max值了,但是又不懂怎么设置

    梁温柔   作者 · 2018-04-11 16:49:06
    回复
  • 梁温柔
  • 梁温柔     2018-04-11 16:46:56 2楼

    <?php
    //引入分页程序
    require_once("../paging.php");
    //取出列表页3条数据,存于数组$data中
    if($info&&mysqli_num_rows($info)){
     while($row=mysqli_fetch_assoc($info)){
      $data[]=$row;
     }
    }else{
     $data=array();
    }
    //取最新添加的6条编号、标题信息,存于数组$data_title
    if($info_title&&mysqli_num_rows($info_title)){
     while($row_title=mysqli_fetch_assoc($info_title)){
      $data_title[]=$row_title;
     }
    }else{
     $data_title=array();
    }
    ?>
    <!DOCTYPE html>
    <html>
    <head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <meta name="format-detection" content="telephone=no" />
    <title>文章列表</title>
    <meta charset="utf-8" />
     <style>
     *{
      box-sizing:border-box;
     }
     .box{
      font-family: 宋体;
      margin:0px auto;
      width:400px;
     }
     .box a:link,.box a:visited,.box a:hover{color:#000000;text-decoration:underline; }
     .head{
      background-color:#0f8ff2;
      height:80px;
     }
     .tit{
      padding: 20px 20px;
      font-size:25px;
     }
     .content{
      width:400px;
      min-height:100px;
      border:1px solid red;
     }
     .top_con{
      width:400px;
      padding:10px;
     }   
     .bottom_con{
      margin-left:20px;
      width:400px;
     }
     .con_tit{
      font-size:18px;
      margin:10px 0px 10px 10px;
      font-weight:bold;
     } 
     .con_des{
      text-indent:2em;
      font-size:18px;
     }
     .con_det{
      padding: 0px 0px 0px 300px;
     } 
     ul{
      list-style:none;
      margin-left:-40px;

     }
     li{
      margin:15px 0px 0px 0px;
     }
     .index{
      margin:-5px 0px 0px 0px ;
     }
     .bg{
      position:relative;
      top: -6px;
      background-color:#fff;
      margin-left:335px;
     }
     </style>
    </head>
    <body>
    <div class="box">
     <div class="head"><div class="tit">php资讯站</div><span class="bg"><a href="../admin/admin_manage.php">后台入口</a></span></div>
     <div class="content">
      <div class="top_con">
       <?php
        //将$data中的数据通过foreach循环出来,显示在相应div里面
        if(!empty($data)){
         foreach($data as $value){
       ?>
       <div class="con_tit"><?php echo $value['title']?></div>
       <div class="con_des"><?php echo $value['description']?></div>
       <div class="con_det"><a href="home_show.php?id=<?php echo $value[id];?>">查看详细</a></div>

       <?php
        }
       }
       //初始化首页、上一页、下一页、末页的值,通过<a>标签进行跳转到当前页面,传入$page的值
        $first=1;
        $prev=$page-1;
        $next=$page+1;
        $last=$pagenum;
       ?>
       <div class="index">
       <a href="home_list.php?page=<?php echo $first ?>">首页</a>
       <a href="home_list.php?page=<?php echo $prev ?>">上一页</a>
       <a href="home_list.php?page=<?php echo $next ?>">下一页</a>
       <a href="home_list.php?page=<?php echo $last ?>">末页</a>
       </div>
      </div>
      <div class="bottom_con">
       <div style="margin-left:10px;margin-top:20px,font-size:20px;">最新资讯</div>
       <ul>
       <?php
       //将$data_title中的数据通过foreach循环出来,显示在相应div里面
        if(!empty($data_title)){
         foreach($data_title as $value_title){
       ?>
        <li><a href="home_show.php?id=<?php echo $value_title['id']?>"><?php echo $value_title['title']?></a></li>
       <?php
        }
       }
       ?>
       </ul>
      </div>
     </div>
    </div>
    </body>
    </html>

    +0 添加回复

  • 回复