php練手小demo實現分頁,php怎麼實現分頁

本文目錄一覽:

PHP如何實現分頁顯示?

【文件名】: c_mysql_page.inc // 【作 用】: MySQL分頁函數類 // 【作 者】: 天灰 // // 【最後修改日期】: 2001/07/16[cxx] // 【變量定義規則】:‘C_’=字符型,‘I_’=整型,‘N_’=數字型,‘L_’=布爾型,‘A_’=數組型 //—————————————————————————————— //—————————————————————————————— // ※c_mysql_page() 構造函數,設置分頁初始參數 // ※page_standard() 分頁顯示函數(標準型) // ※GetRecordStartEnd() 獲得取記錄的開始結束位置 // ※getmaxpage() 獲得記錄集的最大頁數 // ※checkpage() 檢查當前頁數是否在0和最大頁數之間 //—————————————————————————————— class c_mysql_page { //—————————————————————————————— // 變量定義 //—————————————————————————————— var $I_pagesize = 10; //每頁記錄數 var $C_width = ‘80%’; //表格寬度 //—————————————————————————————— //—————————————————————————————— // 函數名:c_mysql_page ($I_pagesize, $c_width) // 作 用:構造函數,設置分頁初始參數 // 參 數:$I_pagesize, $c_width // 返回值:變量 // 備 註:構造函數隨着類的建立而自動執行 //—————————————————————————————— function c_mysql_page ($I_pagesize=10, $C_width=’80%’) { if (isset($I_pagesize)){$this – I_pagesize = $I_pagesize;} if (isset($C_width)){$this – C_width = $C_width;} } //—————————————————————————————— // 函數名:page_standard($I_sumrecord,$C_page,$C_url=”self”,$C_otherpara=””) // 作 用:分頁顯示函數(標準型) // 參 數:$I_sumrecord 記錄總數 // $C_url URL // $C_page URL後的參數 // $C_otherpara URL後的參數2 // $bgcolor 表格的背景顏色 // 返回值: // 備 註:無 //—————————————————————————————— function page_standard($I_sumrecord,$C_page,$C_url=”self”,$C_otherpara=””,$bgcolor=””) { //檢查參數 if ((!$I_sumrecord) || (!$C_page)){AlertExit(“參數不全!”);} global $PHP_SELF,$$C_page; //全局變量$C_page //檢測$I_pagesize是否合法 if($this – I_pagesize 1){AlertExit(“請設定每頁的記錄數!”);} if($I_sumrecord 1){return false;} //檢測總記錄數 if($C_url == “self”){$C_url = $PHP_SELF;} //設置URL $I_page = $$C_page; //重新賦當前頁值 $I_maxpage = $this – getmaxpage($I_sumrecord); //取出總頁數 $I_page = $this – checkPage($I_maxpage,$I_page); //檢查當前頁號 //顯示錶 echo “”; echo “”; echo “共” . $I_sumrecord. “條主題nbsp當前第” . $I_page . “/”. $I_maxpage. “頁”; if ($I_maxpage 1) { echo “”; if($I_page 1 $I_page $I_maxpage) { echo “首頁”; $pre=$I_page-1; echo “上頁”; $next=$I_page+1; echo “下頁”; echo “末頁”; } elseif($I_page == 1) { $next = $I_page+1; echo “下頁”; echo “末頁”; } elseif($I_page == $I_maxpage) { echo “首頁”; $pre=$I_page-1; echo “上頁”; } //顯示select echo “轉到”; echo “”;//OnChange=”.WindowLocation($C_url,$C_otherpara,$C_page).” for($i=1;$i I_pagesize; $I_pagesize = $this – I_pagesize; } //—————————————————————————————— //—————————————————————————————— // 函數名:getmaxpage($intRecordNum) // 作 用:獲得記錄集的最大頁數 // 參 數:$I_sumrecord 記錄總數 // 返回值:最大頁數$I_maxpage(整型) // 備 註:無 //—————————————————————————————— function getmaxpage($I_sumrecord) { if (!$I_sumrecord){AlertExit(“參數不全!

用PHP如何實現分頁並能夠實現上一頁,下一頁,跳轉到()頁的功能?

htmlhead

title分頁示例(php/title

meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″

/head

body

?php

$pagesize=10; //設定每一頁顯示的記錄數

$conn=mysql_connect(“localhost”,”root”,”jrq”);

mysql_select_db(“sj”,$conn);

$rs = mysql_query( “select * from `dw_newsdata`”,$conn); //這裡有第二個可選參數,指定打開的連接

//———————————————————————————————–//

//分頁邏輯處理

//———————————————————————————————–

$tmpArr = mysql_fetch_array($rs);

$numAL = mysql_num_rows($rs); //取得記錄總數$rs

$pages=intval($numAL/$pagesize); //計算總頁數

if ($numAL % $pagesize) $pages++;

//設置缺省頁碼

//↓判斷“當前頁碼”是否賦值過

if (isset($_GET[‘page’])){ $page=intval($_GET[‘page’]); }else{ $page=1; }//否則,設置為第一頁

//↓計算記錄偏移量

$offset=$pagesize*($page – 1);

//↓讀取指定記錄數

$rs=mysql_query(“select * from `dw_newsdata` limit $offset,$pagesize”,$conn);//取得—當前頁—記錄集!

$curNum = mysql_num_rows($rs); //$curNum – 當前頁實際記錄數,for循環輸出用

?

table border=”0″ width=”80%”

tr

td width=”50%” bgcolor=”#E0E0E0″標題/td

td width=”50%” bgcolor=”#E0E0E0″發布時間/td

/tr

?php

while ($tmpArr = mysql_fetch_array($rs)) //提取一行,並循環判斷

{

$i=0;

// for($a=0;$a$ColNum;$a++) //==for結束==

?

tr

td width=”50%”?= $tmpArr[1]; //$tmpArr[“news_title”] ; ?/td

td width=”50%”?php echo $tmpArr[2]; //$tmpArr[“news_cont”]; ?/td

/tr

?php

}//==while結束==

?

/table

?php

//============================//

// 翻頁顯示 一

//============================//

echo “p”; // align=center

$first=1;

$prev=$page-1;

$next=$page+1;

$last=$pages;

if ($page 1)

{

echo “a href=’?page=”.$first.”‘首頁/a “;

echo “a href=’?page=”.$prev.”‘上一頁/a “;

}

if ($page $pages)

{

echo “a href=’?page=”.$next.”‘下一頁/a “;

echo “a href=’?page=”.$last.”‘尾頁/a “;

}

//============================//

// 翻頁顯示 二

//============================//

echo ” | 共有”.$pages.”頁(“.$page.”/”.$pages.”)”;

for ($i=1;$i $page;$i++){echo “a href=’?page=”.$i.”‘[“.$i .”]/a “;} // 1-先輸出當前頁之前的

if ($page 0) echo “[“.$page.”]”;; // 2-再輸出當前頁

for ($i=$page+1;$i=$pages;$i++){echo “a href=’?page=”.$i.”‘[“.$i .”]/a “;}// 3-接着輸出當前頁之後

echo “轉到第 INPUT maxLength=3 size=3 value=”.($page+1).” name=gotox 頁 INPUT hideFocus onclick=\”location.href=’?page=gotox.value’;\” type=button value=Go name=cmd_goto”;

echo “/p”;

?

/body

/html

php怎麼實現分頁

/**

* 獲取分頁的HTML內容

* @param integer $page 當前頁

* @param integer $pages 總頁數

* @param string $url 跳轉url地址 最後的頁數以 ‘page=x’ 追加在url後面

*

* @return string HTML內容;

*/

public static function getPageHtml($page, $pages, $url){

//最多顯示多少個頁碼

$_pageNum = 5;

//當前頁面小於1 則為1

$page = $page1?1:$page;

//當前頁大於總頁數 則為總頁數

$page = $page $pages ? $pages : $page;

//頁數小當前頁 則為當前頁

$pages = $pages $page ? $page : $pages;

//計算開始頁

$_start = $page – floor($_pageNum/2);

$_start = $_start1 ? 1 : $_start;

//計算結束頁

$_end = $page + floor($_pageNum/2);

$_end = $_end$pages? $pages : $_end;

//當前顯示的頁碼個數不夠最大頁碼數,在進行左右調整

$_curPageNum = $_end-$_start+1;

//左調整

if($_curPageNum$_pageNum $_start1){

$_start = $_start – ($_pageNum-$_curPageNum);

$_start = $_start1 ? 1 : $_start;

$_curPageNum = $_end-$_start+1;

}

//右邊調整

if($_curPageNum$_pageNum $_end$pages){

$_end = $_end + ($_pageNum-$_curPageNum);

$_end = $_end$pages? $pages : $_end;

}

$_pageHtml = ‘ul class=”pagination”‘;

/*if($_start == 1){

$_pageHtml .= ‘lia title=”第一頁”«/a/li’;

}else{

$_pageHtml .= ‘lia title=”第一頁” href=”‘.$url.’page=1″«/a/li’;

}*/

if($page1){

$_pageHtml .= ‘lia title=”上一頁” href=”‘.$url.’page=’.($page-1).'”«/a/li’;

}

for ($i = $_start; $i = $_end; $i++) {

if($i == $page){

$_pageHtml .= ‘li class=”active”a’.$i.’/a/li’;

}else{

$_pageHtml .= ‘lia href=”‘.$url.’page=’.$i.'”‘.$i.’/a/li’;

}

}

/*if($_end == $pages){

$_pageHtml .= ‘lia title=”最後一頁”»/a/li’;

}else{

$_pageHtml .= ‘lia title=”最後一頁” href=”‘.$url.’page=’.$pages.'”»/a/li’;

}*/

if($page$_end){

$_pageHtml .= ‘lia title=”下一頁” href=”‘.$url.’page=’.($page+1).'”»/a/li’;

}

$_pageHtml .= ‘/ul’;

echo $_pageHtml;

}

用php怎麼實現頁面的分頁功能呢?用原生的php寫,不是基於圖片開發的,求代碼,謝謝

?php

    /*

     *  $total 總記錄數

     *  $num   顯示數量

     *  $limit  回調SQL語句里的limit 變量

     *  $name  顯示字符 默認’個商品’

     *  

     * */        

function page($total,$num,$limit,$name=’個商品’){

    $pagenum=ceil($total/$num); //顯示總頁數 公式:總數據數 除以 每頁顯示的條數,有餘進一 

    $cpage=isset($_GET[‘page’])? $_GET[‘page’]:1;// 當前頁是哪一頁,即默認在哪一頁

    

    

    $offset=($cpage-1)*$num;  //limit 第一個參數值  從第幾個開始。

    

    $limit=’LIMIT ‘.$offset.’,’.$num;

    $path=$_SERVER[‘SCRIPT_NAME’].’?’; // 獲取當前URL路徑

    

    //顯示信息

    $str=’共 ‘.$total.’nbsp;’.$name.’nbsp;nbsp;’.’每頁顯示nbsp;’.$num.’nbsp;條nbsp;nbsp;’;   //共多少數據

    

    //顯示上一頁  

    if($cpage!=1){

        $befor=$cpage-1; //當前頁 -1

        $str.=’a href=”‘.$path.’page=1’.'”首頁/anbsp;nbsp;a href=”‘.$path.’page=’.$befor.'”上一頁/a ‘;

    }

    //點擊下一頁後顯示頁碼數量

    for($i=10;$i=1;$i–){

        $n=$cpage-$i;

            if($n0){

                $str.=’a href=”‘.$path.’page=’.$n.'”‘.$n.’nbsp;nbsp;’.’/a’;

            }

    }

    //當前顯示頁

    if($pagenum1){

        $str.=’b’.$cpage.’nbsp;nbsp;’.’/b’;

    

    }

    //當前頁顯示頁碼數量

    for($i=1;$i10;$i++){

        $n=$cpage+$i;

            if($n$pagenum){

            $str.=’a href=”‘.$path.’page=’.$n.'”‘.$n.’nbsp;nbsp;’.’/a’;

            }

        }

    

    //顯示下一頁

    if($cpage!=$pagenum){

        $next=$cpage+1;

    $str.=’a href=”‘.$path.’page=’.$next.'”下一頁/anbsp;nbsp;a href=”‘.$path.’page=’.$pagenum.'”末頁/a’;

    }

    return $str;

}

模版中使用:

        include “conn.inc.php”;

        include “fenye.inc.php”;

                  //添加分頁

        $psql= “select count(*) as count from apply”;

        $arr=mysql_fetch_assoc(mysql_query($psql));

        $total=$arr[‘count’];  //統計總數據

        

        $page=page($total,5,$limit,’條’);

   $sql = “select *  from apply order by id desc $limit “;

                

        $result = mysql_query($sql);

        while($row = mysql_fetch_assoc($result)){

            echo “tr”;

            echo “td”.$row[‘id’].”/td”;

            echo “td”.$row[‘name’].”/td”;

            echo “td”.$row[‘place’].”/td”;

            echo “td”.$row[‘xueli’].”/td”;

            echo “td”.$row[‘tel’].”/td”;

            echo “td”.$row[‘addtime’].”/td”;

            echo “tda href=’javascript:void(0)’ onclick=’xq({$row[‘id’]})’詳情/a | a href=’apply_index.php?del={$row[‘id’]}’ 刪除/a/td”;

            echo “/tr”;

        }

            echo “trtd colspan=’7′”.$page.”/td/tr”;

?

php 長文章怎麼在顯示時實現分頁

有種偷懶的做法。就是文章太長。就是顯示一段,隱藏另外段落。

文章在後台發布肯定是通過WEB編輯器進行的,對吧!你可以在編輯器上增加文章分頁顯示功能。具體的原理是這樣的,你在想要分頁的地方插入你自己定義的標記符號比如#page#,插入到數據庫中的HTML代碼中就會有這樣的#page#的代碼。在前台看的時候,通過程序處理。把文字HTML中有#page#這樣的東西。進行下翻譯成文章分頁即可!有幾個#page#就可以判斷在當初在後台設置過分幾頁顯示。生成一段JS代碼、控制DIV的顯示隱藏就可以實現分頁效果。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/236580.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:00
下一篇 2024-12-12 12:00

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • jQuery Datatable分頁中文

    jQuery Datatable是一個非常流行的數據表插件,它可以幫助您快速地在頁面上創建搜索、過濾、排序和分頁的數據表格。不過,它的默認設置是英文的,今天我們就來探討如何將jQu…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • uniapp分頁第二次請求用法介紹

    本文將從多個方面對uniapp分頁第二次請求進行詳細闡述,並給出對應的代碼示例。 一、請求參數的構造 在進行分頁請求時,需要傳遞的參數體包含當前頁碼以及每頁顯示的數據量。對於第二次…

    編程 2025-04-27
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台服務器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24
  • Mybatis Plus分頁失效問題及解決方案

    一、分頁失效的原因 Mybatis Plus是一款優秀的ORM框架,使用簡單方便。但是,在使用它進行分頁時,有時會出現分頁失效的問題,原因可能有以下幾個方面: 1、Mybatis …

    編程 2025-04-24

發表回復

登錄後才能評論