程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP寫內容分頁源碼剖析

PHP寫內容分頁源碼剖析

編輯:PHP綜合
所謂內容分頁,就是根據你自己設定的標簽,將較長的內容按你設置的標簽來進行分頁,本文涉及的兩個地方,一個是地址的獲取,網上有很多這樣的分頁教程,但是地址都是固定的,如果頁面中有評論分頁以及文章ID調用過來,就會非常麻煩,文中采用了PHP100視頻教程中分頁原理 (http://www.PHP100.com/Html/shipinjiaocheng/PHP100shipinjiaocheng/2009/0416/807.Html) 思路,有不清楚的童鞋可以看下此教程,同時運用了一些內容處理函數以及數組方面知識,本人頭次寫這樣的文章,表述不清楚的還請見諒

先看下效果圖:

 

 

 

更多這樣的分頁效果,在PHP100論壇有很多這樣的樣式,在這兒分享圖片中的CSS樣式代碼:

CSS:

  1. DIV.digg {PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; MARGIN: 3px; PADDING-TOP: 3px; TEXT-ALIGN: center}  
  2. DIV.digg A {BORDER-RIGHT: #aaaadd 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaaadd 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #aaaadd 1px solid; COLOR: #000099; PADDING-TOP: 2px; BORDER-BOTTOM: #aaaadd 1px solid; TEXT-DECORATION: none}  
  3. DIV.digg A:hover {BORDER-RIGHT: #000099 1px solid; BORDER-TOP: #000099 1px solid; BORDER-LEFT: #000099 1px solid; COLOR: #000; BORDER-BOTTOM: #000099 1px solid}  
  4. DIV.digg A:active {BORDER-RIGHT: #000099 1px solid; BORDER-TOP: #000099 1px solid; BORDER-LEFT: #000099 1px solid; COLOR: #000; BORDER-BOTTOM: #000099 1px solid}  
  5. DIV.digg SPAN.current {BORDER-RIGHT: #000099 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #000099 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: bold; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #000099 1px solid; COLOR: #fff; PADDING-TOP: 2px; BORDER-BOTTOM: #000099 1px solid; BACKGROUND-COLOR: #000099}  
  6. DIV.digg SPAN.disabled {BORDER-RIGHT: #eee 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #eee 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #eee 1px solid; COLOR: #ddd; PADDING-TOP: 2px; BORDER-BOTTOM: #eee 1px solid} 

PHP代碼:

  1. <?PHP   
  2. $contents="fjka;fjsa;#page#批量生[newpage]#page#成分成文#page#件並且加#page#上分頁代碼";   //帶了分頁標簽的原內容  
  3. $cons="fjka;fJSa;adsfasdfas碼";  //不帶分頁標簽的原內容  
  4.  
  5. function    conpage($contents) {  
  6.     $pagesss='#page#';  //設定分頁標簽  
  7.     $a=strpos($contents,$pagesss);  
  8.     if($a){  
  9.     $con=explode($pagesss,$contents);  
  10.     $cons=count($con);   
  11.     @$p = ceil(所謂內容分頁,就是根據你自己設定的標簽,將較長的內容按你設置的標簽來進行分頁,本文涉及的兩個地方,一個是地址的獲取,網上有很多這樣的分頁教程,但是地址都是固定的,如果頁面中有評論分頁以及文章ID調用過來,就會非常麻煩,文中采用了PHP100視頻教程中分頁原理 (http://www.php100.com/html/shipinjiaocheng/PHP100shipinjiaocheng/2009/0416/807.Html) 思路,有不清楚的童鞋可以看下此教程,同時運用了一些內容處理函數以及數組方面知識,本人頭次寫這樣的文章,表述不清楚的還請見諒

    先看下效果圖:

     

     

     

    更多這樣的分頁效果,在PHP100論壇有很多這樣的樣式,在這兒分享圖片中的CSS樣式代碼:

    CSS:

    1. DIV.digg {PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; MARGIN: 3px; PADDING-TOP: 3px; TEXT-ALIGN: center}  
    2. DIV.digg A {BORDER-RIGHT: #aaaadd 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaaadd 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #aaaadd 1px solid; COLOR: #000099; PADDING-TOP: 2px; BORDER-BOTTOM: #aaaadd 1px solid; TEXT-DECORATION: none}  
    3. DIV.digg A:hover {BORDER-RIGHT: #000099 1px solid; BORDER-TOP: #000099 1px solid; BORDER-LEFT: #000099 1px solid; COLOR: #000; BORDER-BOTTOM: #000099 1px solid}  
    4. DIV.digg A:active {BORDER-RIGHT: #000099 1px solid; BORDER-TOP: #000099 1px solid; BORDER-LEFT: #000099 1px solid; COLOR: #000; BORDER-BOTTOM: #000099 1px solid}  
    5. DIV.digg SPAN.current {BORDER-RIGHT: #000099 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #000099 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: bold; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #000099 1px solid; COLOR: #fff; PADDING-TOP: 2px; BORDER-BOTTOM: #000099 1px solid; BACKGROUND-COLOR: #000099}  
    6. DIV.digg SPAN.disabled {BORDER-RIGHT: #eee 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #eee 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #eee 1px solid; COLOR: #ddd; PADDING-TOP: 2px; BORDER-BOTTOM: #eee 1px solid} 

    PHP代碼:

    ___FCKpd___1
    GET['p']);  
  12.     if(!$p||$p<0) $p=1;  
  13.     $url=所謂內容分頁,就是根據你自己設定的標簽,將較長的內容按你設置的標簽來進行分頁,本文涉及的兩個地方,一個是地址的獲取,網上有很多這樣的分頁教程,但是地址都是固定的,如果頁面中有評論分頁以及文章ID調用過來,就會非常麻煩,文中采用了PHP100視頻教程中分頁原理 (http://www.php100.com/html/shipinjiaocheng/PHP100shipinjiaocheng/2009/0416/807.Html) 思路,有不清楚的童鞋可以看下此教程,同時運用了一些內容處理函數以及數組方面知識,本人頭次寫這樣的文章,表述不清楚的還請見諒

    先看下效果圖:

     

     

     

    更多這樣的分頁效果,在PHP100論壇有很多這樣的樣式,在這兒分享圖片中的CSS樣式代碼:

    CSS:

    1. DIV.digg {PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; MARGIN: 3px; PADDING-TOP: 3px; TEXT-ALIGN: center}  
    2. DIV.digg A {BORDER-RIGHT: #aaaadd 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaaadd 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #aaaadd 1px solid; COLOR: #000099; PADDING-TOP: 2px; BORDER-BOTTOM: #aaaadd 1px solid; TEXT-DECORATION: none}  
    3. DIV.digg A:hover {BORDER-RIGHT: #000099 1px solid; BORDER-TOP: #000099 1px solid; BORDER-LEFT: #000099 1px solid; COLOR: #000; BORDER-BOTTOM: #000099 1px solid}  
    4. DIV.digg A:active {BORDER-RIGHT: #000099 1px solid; BORDER-TOP: #000099 1px solid; BORDER-LEFT: #000099 1px solid; COLOR: #000; BORDER-BOTTOM: #000099 1px solid}  
    5. DIV.digg SPAN.current {BORDER-RIGHT: #000099 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #000099 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: bold; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #000099 1px solid; COLOR: #fff; PADDING-TOP: 2px; BORDER-BOTTOM: #000099 1px solid; BACKGROUND-COLOR: #000099}  
    6. DIV.digg SPAN.disabled {BORDER-RIGHT: #eee 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #eee 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: #eee 1px solid; COLOR: #ddd; PADDING-TOP: 2px; BORDER-BOTTOM: #eee 1px solid} 

    PHP代碼:

    ___FCKpd___1
    SERVER["REQUEST_URI"];  
  14.     $parse_url=parse_url($url);  
  15.     $url_query=$parse_url["query"];  
  16.     if($url_query){  
  17.     $url_query=ereg_replace("(^|&)p=$p","",$url_query);  
  18.     $url=str_replace($parse_url["query"],$url_query,$url);  
  19.     if($url_query) $url.="&p"; else $url.="p";  
  20.     }else {  
  21.     $url.="?p";  
  22.     }  
  23.     if($cons<=1) return false;//只有一頁時不顯示分頁  
  24.     $pagenav="<div class=\"digg\">";  
  25.     for($i=1;$i<=$cons;$i++){  
  26.         if($i==$p){  
  27.             $pagenav.='<span class="current">'.$p.'</span>';  
  28.         }else{  
  29.             $pagenav.="<a href='$url=$i'>$i</a>";  
  30.         }  
  31.     }  
  32.     $pagenav.="</div>";  
  33.     return $con[$p-1].$pagenav;  
  34.     }else{  
  35.     return $contents;  
  36.     }  
  37. }  
  38.  
  39. echo     conpage($contents); //帶有分頁標簽的  
  40. echo     conpage($cons);  //不帶分頁標簽的  
  41.  
  42. ?>
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved