亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

php分頁程序paginator程序代碼

2024-09-04 11:44:02
字體:
來源:轉載
供稿:網友
  1. <?php  
  2.    
  3. class paginator {  
  4.    
  5.     function __construct () {  
  6.    
  7.     }  
  8.    
  9.     static function render($page_typearray $args = array()) {  
  10.         $html = '';  
  11.         switch ($page_type)  
  12.         {  
  13.             case '1':  
  14.                 $html =  page_1($channel_code$page_num$cur_page$per_group$base_url$n$v);  
  15.                 break;  
  16.             case '2':  
  17.                 $html =  fpage($row_num$pagesize$page$url);  
  18.                 break;  
  19.             case '3':  
  20.                 break;  
  21.    
  22.             default:  
  23.                 $html = page($num$perpage$curpage$mpurl$hiddenFrom='');  
  24.         }  
  25.    
  26.         return $html;  
  27.     }  
  28.    
  29.    
  30.    
  31.     //函數1:根據總頁數,當前頁,和頁分組及url產生分頁導航  
  32.     function page_1($channel_code$page_num$cur_page$per_group$base_url$n$v) {  
  33.         // 分頁函數參數列表(有多少頁,當前頁,每頁多少個 ,鏈接地址)  
  34.         $base_url .= strpos($base_url'?') ? '&' : '?';    //如果有?,則添加&,否則加?  
  35.    
  36.         $page_val = "";  
  37.    
  38.         if ($page_num < 1) {  
  39.             return $page_val//如果小于1,返回空  
  40.         } elseif ($page_num == 1) {  
  41.             return $page_val = 1;   //如果等于1,返回1  
  42.         }  
  43.    
  44.         //分組  
  45.    
  46.         $group_ok = !(($page_num-1) % ($per_group-1));  //沒有余數  
  47.         // 計算一共有多少組  
  48.         if($group_ok) {  
  49.             $group_num = ($page_num-1)/($per_group-1);  
  50.         }else {  
  51.             $group_num = ceil(($page_num-1) / ($per_group-1));  
  52.         } //判斷當前頁是否為一組的最后一個  
  53.    
  54.    
  55.         //組數  
  56.         $is_last_page = !(($cur_page-1) % ($per_group-1)); //計算當前在的組數  
  57.         if ($is_last_page) {  
  58.             $cur_group = ($cur_page-1) / ($per_group-1) + 1;  
  59.         } else {  
  60.             $cur_group = ceil(($cur_page-1) / ($per_group-1));  
  61.         }  
  62.    
  63.         // 計算顯示的起始頁 ,這個關鍵  
  64.         $from = ($cur_group - 1) * ($per_group-1) + 1;  
  65.         $from = $cur_group <= 1 ? 1 :$from;  
  66.    
  67.         $to = $from + $per_group;  
  68.         $to = $to > $page_num ? $page_num + 1 : $to;  
  69.    
  70.         for($a = $from$a < $to$a++) {  
  71.             if ($a != $cur_page) {  
  72.    
  73.                 //不是當前頁  
  74.                 $page_val .= '<li><a href ="' . $base_url . 'channel='.$channel_code.'&n='.$n.'&v='.$v.'&page=' . $a . '">' . $a . '</a></li>';  
  75.             } else {  
  76.                 //當前頁  
  77.                 $page_val .='<li class="current">'$a .'</li>';  
  78.             }  
  79.         }  
  80.    
  81.         //上一頁下一頁首頁尾頁  
  82.         $next = $cur_page + 1;    //當前頁+1  
  83.         $prev = $cur_page-1;   //當前頁-1  
  84.    
  85.         if ($cur_page != $page_num) {  
  86.             //當前頁不是最后一頁  
  87.             $page_val .= '<span><a href ="' . $base_url . 'channel='.$channel_code.'&n='.$n.'&v='.$v.'&page=' . $next . '">' . '下一頁' . '</a></span>';  
  88.             $page_val .= '<span><a href ="' . $base_url . 'channel='.$channel_code.'&n='.$n.'&v='.$v.'&page=' . $page_num . '">' . '>>' . '</a></span>'//尾頁  
  89.    
  90.         }  
  91.         if ($cur_page != 1){  
  92.    
  93.             //不是第一頁,加上前面的內容  
  94.             $page_val = '<span><a href ="' . $base_url . 'channel='.$channel_code.'&n='.$n.'&v='.$v.'&page=' . $prev . '">' . '上一頁' . '</a></span>' . $page_val;  
  95.             $page_val = '<span><a href ="' . $base_url . 'channel='.$channel_code.'&n='.$n.'&v='.$v.'&page=1">' . '<<' . '</a></span>' . $page_val//首頁  
  96.    
  97.         }  
  98.         $page_val = '<ul class="page_nav">'.$page_val.'</ul>';  
  99.    
  100.    
  101.         return $page_val;  
  102.     }  
  103.    
  104.    
  105.    
  106.    
  107.     // 函數2:根據記錄數,頁列清數,當前頁,url年成分頁  
  108.     function fpage($row_num$pagesize$page$url) {  
  109.         //$page,當前頁;$row_num記錄總數;$pagesize:每頁記錄數;$url記錄頁;  
  110.         //如果,如果有作數,則取加1  
  111.         $page_count = $row_num % $pagesize?intval($row_num / $pagesize) + 1:intval($row_num / $pagesize);  
  112.    
  113.         if ($page_count == 1) {  
  114.             $page_string = "第一頁|上一頁|下一頁|尾頁";  
  115.         } else {  
  116.             //如果不止一頁  
  117.             if ($page == 1) {  
  118.                 //第一頁顯示  
  119.                 $page_string = " <a href=" . $url . "?page=1>第一頁 </a>|上一頁| <a href=" . $url . "?page=" . ($page + 1) . ">下一頁 </a>| <a href=" . $url . "?page=" . $page_count . ">尾頁 </a>";  
  120.             }  
  121.             if (($page > 1) and ($page < $page_count)) {  
  122.                 $page_string = " <a href=" . $url . "?page=1>第一頁 </a>| <a href=" . $url . "?page=" . ($page-1) . ">上一頁 </a>| <a href=" . $url . "?page=" .  
  123.                 ($page + 1) . ">下一頁 </a>| <a href=" . $url . "?page=" . $page_count . ">尾頁 </a>";  
  124.             }  
  125.             if ($page == $page_count) {  
  126.                 $page_string = " <a href=" . $url . "?page=1>第一頁 </a>| <a href=" . $url . "?page=" . ($page-1) . ">上一頁 </a>|下一頁| <a href=" . $url . "?page=" . $page_count . ">尾頁 </a>";  
  127.             }  
  128.         }  
  129.         $page_str = $page_string . ("," . $page . "/" . $page_count . "頁");  
  130.         echo " <br> <p align=center>" . $page_str . " </p>";  
  131.     }  
  132.    
  133.    
  134.     /**  
  135.  * 分頁函數  
  136.  *  
  137.  * @param int $num:記錄總數  
  138.  * @param int $perpage:每頁記錄  
  139.  * @param int $curpage:當前頁  
  140.  * @param string $mpurl:路徑url  
  141.  * @param unknown_type $hiddenFrom  
  142.  * @return string  
  143.  */ 
  144.     function page($num$perpage$curpage$mpurl,$hiddenFrom='') {  
  145.         $multipage = '';  
  146.         //恢復  
  147.         $mpurl .= strpos($mpurl'?') ? '&' : '?';  
  148.    
  149.         if($num > $perpage) {  
  150.             $page = 10;  
  151.             $offset = 2;  
  152.    
  153.             $pages = @ceil($num / $perpage);  //總頁數  
  154.    
  155.             if($page > $pages) {  
  156.                 $from = 1;  
  157.                 $to = $pages;  
  158.             } else {  
  159.                 //如果總頁數>10  
  160.                 $from = $curpage - $offset;   //當前頁-2  
  161.                 $to = $from + $page - 1;    //當前頁+10-3  
  162.    
  163.                 if($from < 1) {  
  164.    
  165.                     $to = $curpage + 1 - $from;  
  166.                     $from = 1;  
  167.                     if($to - $from < $page) {  
  168.                         $to = $page;  
  169.                     }  
  170.                 } elseif($to > $pages) {  
  171.                     $from = $pages - $page + 1;  
  172.                     $to = $pages;  
  173.                 }  
  174.             }  
  175.    
  176.             if ($hiddenFrom) {  
  177.                 $multipage = ($curpage - $offset > 1 && $pages > $page ? '<a href="#" '.js_page($hiddenFrom,1).'>首頁</a> ' : '').  
  178.                 ($curpage > 1 ? ' <a href="#" '.js_page($hiddenFrom,$curpage - 1).'>‹‹上一頁</a> ' : '');  
  179.                 for($i = $from$i <= $to$i++) {  
  180.                     $multipage .= $i == $curpage ? '<span>'.$i.'</span> ' :  
  181.                     '<a href="#" '.js_page($hiddenFrom,$i).'>'.$i.'</a> ';  
  182.                 }  
  183.    
  184.                 $multipage .= ($curpage < $pages ? '<a href="#" '.js_page($hiddenFrom,$curpage + 1).'>下一頁››</a>' : '').  
  185.                 ($to < $pages ? '<a href="#" '.js_page($hiddenFrom,$pages).'> 末頁</a>' : '');  
  186.                 $multipage = $multipage ? '<div class="list-page">'.$multipage.'</div>' : '';  
  187.             } else {  
  188.    
  189.                 $multipage = ($curpage - $offset > 1 && $pages > $page ? '<a href="'.$mpurl.'page=1">首頁</a> ' : '').  
  190.                 ($curpage > 1 ? ' <a href="'.$mpurl.'page='.($curpage - 1).'">‹‹上一頁</a> ' : '');  
  191.    
  192.                 for($i = $from$i <= $to$i++) {  
  193.                     $multipage .= $i == $curpage ? '<span>'.$i.'</span> ' :  
  194.                     '<a href="'.$mpurl.'page='.$i.'">'.$i.'</a> ';  
  195.                 }  
  196.    
  197.                 $multipage .= ($curpage < $pages ? '<a href="'.$mpurl.'page='.($curpage + 1).'">下一頁››</a>' : '').  
  198.                 ($to < $pages ? '<a href="'.$mpurl.'page='.$pages.'"> 末頁</a>' : '');  
  199.                 $multipage = $multipage ? '<div class="list-page">'.$multipage.'</div>' : '';  
  200.             }  
  201.         }  
  202.         return $multipage;  
  203.     }  
  204.     //暫不用  
  205.     function page_get_start($page$ppp$totalnum) {  
  206.         $totalpage = ceil($totalnum / $ppp);  
  207.         $page =  max(1, min($totalpageintval($page)));  
  208.         return ($page - 1) * $ppp;  
  209.     }  
  210.     //暫不用  
  211.     function js_page($hiddenFrom,$page)  
  212.     {  
  213.         if ($hiddenFrom) {  
  214.             return ' onclick=javascript:$("#page").val("'.$page.'");$("#'.$hiddenFrom.'").submit(); ';  
  215.         }  
  216.     }  
  217. }  
  218. ?> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩精品福利在线| 亚洲成人免费网站| 色噜噜狠狠狠综合曰曰曰| 国产精品久久久av| 久久久精品免费视频| 亚洲社区在线观看| 97色在线观看免费视频| 久久久久久国产精品美女| 国产精品第2页| 91精品综合视频| 一本色道久久88亚洲综合88| 久久综合久中文字幕青草| 欧美成人精品激情在线观看| 欧美在线性视频| 亚洲成av人乱码色午夜| 国产精品高清在线观看| 51ⅴ精品国产91久久久久久| 亚洲成人黄色在线| 久99久在线视频| 欧美视频不卡中文| 久久久999精品视频| 日韩综合视频在线观看| 久久国产一区二区三区| 国产精品成人av性教育| 亚洲无限av看| 91九色国产视频| 中文字幕一区日韩电影| 欧美日韩性视频在线| 日本国产高清不卡| 日本aⅴ大伊香蕉精品视频| 亚州精品天堂中文字幕| 成人av番号网| 精品丝袜一区二区三区| 欧美性猛交99久久久久99按摩| 国产精品久久久久影院日本| 性金发美女69hd大尺寸| 久久99国产精品自在自在app| 精品亚洲精品福利线在观看| 欧美日韩中文字幕在线视频| 川上优av一区二区线观看| 亚洲一区二区三区在线视频| 国产精品日韩久久久久| 亚洲天堂av电影| 秋霞午夜一区二区| 丝袜情趣国产精品| 亚洲精品视频网上网址在线观看| 日韩在线视频国产| 91在线视频导航| 日本精品va在线观看| 精品人伦一区二区三区蜜桃网站| 久久视频中文字幕| 国产精品久久久亚洲| 国产亚洲成精品久久| 欧美电影在线播放| 亚洲综合在线播放| 国产精品入口福利| 狠狠躁夜夜躁人人爽天天天天97| 国产成人精品久久二区二区91| 日韩av在线播放资源| 欧美多人爱爱视频网站| 国产精品第10页| 日韩在线视频观看| 中文字幕少妇一区二区三区| 国产精品久久久久久久久久免费| 日韩av一区二区在线观看| 国产精品久久久久久av福利| 欧美日韩人人澡狠狠躁视频| 91在线观看免费观看| 国产亚洲成精品久久| 亚洲精美色品网站| 91国在线精品国内播放| 欧美中文字幕在线观看| 亚洲人成网站免费播放| 成人高清视频观看www| 国产成人91久久精品| 亚洲国产天堂网精品网站| 国产视频自拍一区| 欧美亚洲午夜视频在线观看| 亚洲自拍偷拍色片视频| 国产精品一区专区欧美日韩| 国产精品99久久久久久久久久久久| 欧美一区二区色| 欧美在线www| 精品国产福利视频| 国产精品香蕉在线观看| 国产欧美精品久久久| 国产精品av电影| 九九九久久久久久| 亚洲电影免费观看高清完整版在线| 欧美激情欧美狂野欧美精品| 国产日本欧美一区| 亚洲美女中文字幕| 亚洲一区二区三区久久| 精品久久久999| 社区色欧美激情 | 日本一区二区在线免费播放| 国产精品视频一区国模私拍| 日韩精品中文在线观看| 69久久夜色精品国产69| 欧美在线视频播放| 国产精品流白浆视频| 亚洲成人精品在线| 国产在线观看不卡| 91在线精品播放| 亚洲xxx大片| 欧美黑人国产人伦爽爽爽| 欧美日韩电影在线观看| 欧美丝袜第一区| 5252色成人免费视频| 欧美性猛交xxxx乱大交蜜桃| 亚州av一区二区| 91老司机在线| 日韩av123| 4k岛国日韩精品**专区| 国产视频精品自拍| 国产精品视频久久久| 中文字幕9999| 亚洲成人黄色网址| 中文亚洲视频在线| 一区二区三区回区在观看免费视频| 久久久精品国产一区二区| 川上优av一区二区线观看| 97视频在线观看亚洲| 日韩精品视频三区| 日本欧美在线视频| 国产女同一区二区| 国产精品成av人在线视午夜片| 久久成人18免费网站| 中文字幕国产精品久久| 欧美成人三级视频网站| 欧美放荡办公室videos4k| 98精品国产自产在线观看| 久久久亚洲成人| 91社影院在线观看| 免费av一区二区| 久久久久中文字幕2018| 欧美第一页在线| 91tv亚洲精品香蕉国产一区7ujn| 国产成人自拍视频在线观看| 欧美日韩一区二区三区| 久久久久久国产三级电影| 国产成人精品视频| 亚洲国产美女精品久久久久∴| 亚洲免费伊人电影在线观看av| 久久免费视频这里只有精品| 精品国产一区二区在线| 国产一区在线播放| 亚洲国产99精品国自产| 久久久电影免费观看完整版| 欧美性生交大片免网| 91情侣偷在线精品国产| 日韩美女视频中文字幕| 性色av一区二区三区红粉影视| 麻豆乱码国产一区二区三区| 国产精品自产拍在线观看| 成人黄色av网站| 国产97人人超碰caoprom| 一区二区三区视频免费在线观看| 狠狠干狠狠久久| 久久久中精品2020中文| 午夜精品久久久久久久男人的天堂| 欧美黑人巨大xxx极品| 亚洲国产精品小视频| 亚洲a级在线播放观看|