[原創]分頁中級教程之步進分頁,該怎麼解決

來源:互聯網
上載者:User
[原創]分頁中級教程之步進分頁
在初級教程中提到當頁碼很多的情況,本文主要是針對此處探討。歡迎拍磚。

源碼與之前的初級分頁教程差不多,只是在輸出翻頁連結的地方稍作改進

什麼是步進分頁呢?這裡簡單的說一下

當總頁數達到好幾百的時候,如果按照之前的文章中的做法,那麼頁面變得很醜,所有的頁碼都輸出來了,因此很不雅觀,所以需要對輸出的頁碼數量進行控制。如果你細心,看discuz的分頁。最終顯示的頁碼始終不超過一定數量。


PHP code
分頁執行個體$total_page?$total_page:$page;//避免$_GET["page"]大於總頁數//翻頁連結開始$page_link="";if ($total_page>1){    $page_link="一共{$total_page}頁";    $page_link.="當前第{$page}頁";    $page_link.="首頁";    if ($page>1){        //頁碼大於1的時候,顯示上一頁翻頁連結        $pre_page=$page-1;        $page_link.="<<";    }    //翻頁列表    //步進分頁,翻頁列表的數字始終只顯示9個或者自訂的個數,本例定義只顯示9個,當前頁左右各顯示4個頁碼    if ($total_page>9)    {        if ($page>4)        {            $from=$page-4;            $to=$page+4;            if ($to>$total_page)            {                $from=$total_page-8;                $to=$total_page;            }        }        else        {            $from=1;            $to=9;        }    }    else    {        $from=1;        $to=$total_page;    }    for ($i=$from;$i<=$to;$i++)    {        if ($i==$page)        {            //高亮當前頁頁碼            $page_link.="$i";        }        else        {            $page_link.="$i";        }    }    //頁碼小於總頁數的時候顯示下一頁翻頁連結    $next_page=$page+1;    if($next_page<$total_page)    {        $page_link.=">>";    }    $page_link.="最後一頁";}//輸出記錄$offset=($page-1)*$page_size;$query=mysql_query("select * from product limit $offset,$page_size")  or die(mysql_error());echo "
  
    ";while ($rs=mysql_fetch_array($query)){ echo "
  • {$rs["id"]}-{$rs["ename"]}
  • ";}echo "
";echo "$page_link";?>



------解決方案--------------------
難得看見的加綠色的文章。。
------解決方案--------------------
好教程,適合新手哦,我有自己的分頁類
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.