主頁 > 知識庫 > php封裝的page分頁類完整實(shí)例代碼

php封裝的page分頁類完整實(shí)例代碼

熱門標(biāo)簽:山西探意電話機(jī)器人 百應(yīng)電話機(jī)器人服務(wù) 騰訊外呼管理系統(tǒng) 河南電銷卡外呼系統(tǒng)哪家強(qiáng) 山西回?fù)芡夂粝到y(tǒng) 揚(yáng)州地圖標(biāo)注app 昭通辦理400電話 岳陽外呼型呼叫中心系統(tǒng)在哪里 青島語音外呼系統(tǒng)招商

效果圖

1.測試實(shí)例test.php

?php
header("Content-Type: text/html; charset=utf-8");
date_default_timezone_set("Asia/Shanghai"); //時區(qū)

require_once('page.class.php');

$showrow = 5;
$curpage = empty($_GET['page']) ? 1 : $_GET['page'];
$url = "?page={page}";
$dsn = 'mysql:host=xxx.xxx.80.xxx;dbname=admin';
$pdo = new PDO($dsn, 'root', 'root');
$pdo->query('set names utf8');
$sql = "SELECT * from operator_list where 1=1";

$res_gg = $pdo->query("SELECT count(*) as ctn from operator_list where 1=1;");
$result = $res_gg->fetch();

$total = $result["ctn"];

if (!empty($_GET['page'])  $total != 0  $curpage > ceil($total / $showrow)) {
 $curpage = ceil($total_rows / $showrow);
}
$sql .= " LIMIT " . ($curpage - 1) * $showrow . ",$showrow;";

$res_zz = $pdo->query($sql);
$result = $res_zz->fetchAll();

//print_r(json_encode($result));die;

?>

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
html xmlns="http://www.w3.org/1999/xhtml">
head>
 meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 title>/title>
 meta name="keywords" content="入庫"/>
 meta name="description" content="入庫"/>
 script type="text/javascript" src="static/js/jquery-1.11.0.min.js?v=1">/script>
 link rel="stylesheet" type="text/css" href="static/css/common.css" rel="external nofollow" />
/head>
body>
div class="head">
 !-- div class="head_inner clearfix">-->
 !--  ul id="nav">-->
 !--   li>a href="javascript;" rel="external nofollow" rel="external nofollow" >商品列表/a>/li>-->
 !--   li>a href="javascript;" rel="external nofollow" rel="external nofollow" >詳情列表/a>/li>-->
 !--  /ul>-->
 !--    a class="logo" href="javascript" rel="external nofollow" >
      img src="javascript;" alt="公司logo" />/a> -->
 !-- /div>-->
/div>
div class="container">
 div class="demo">
  h2 class="title">報(bào)表/h2>

  div class="showData">
   table width="100%" border="0" align="center" 
   style="border:1px solid #ccc;" cellpadding="0" cellspacing="1">
    tr align="center">
     td>ID/td>
     td>商品編號/td>
     td>訂閱狀態(tài)/td>
     td>商品狀態(tài)/td>
     td>修改時間/td>
     td>創(chuàng)建時間/td>
    /tr>
    ?php
    if (!empty($result)) {
     foreach ($result as $k => $v) {
      ?>
      tr align="center">
       td>?php echo $v['id']; ?>/td>
       td>?php echo $v["customer_id"]; ?>/td>
       td>?php echo $v["name"]; ?>/td>
       td>?php echo $v["role_id"]; ?>/td>
       td>?php echo $v["status"]; ?>/td>
       td>?php echo $v["cdate"]; ?>/td>
      /tr>
      ?php
     }
    }
    ?>
   /table>
  /div>
  div class="showPage">
   ?php
   if ($total > $showrow) {//總記錄數(shù)大于每頁顯示數(shù),顯示分頁
    $page = new page($total, $showrow, $curpage, $url, 3);
    echo $page->myde_write();
   }
   ?>
  /div>
 /div>
/div>
div class="foot">
 阿里巴巴:a href="#" rel="external nofollow" target="_blank">https://www.taobao.com/a>
/div>
/body>
/html> 

2.封裝的page分頁類page.class.php

?php

/* * *********************************************
 * @類名: page
 * @參數(shù): $myde_total - 總記錄數(shù)
 *   $myde_size - 一頁顯示的記錄數(shù)
 *   $myde_page - 當(dāng)前頁
 *   $myde_url - 獲取當(dāng)前的url
 * @功能: 分頁實(shí)現(xiàn)
 */

class page {

 private $myde_total;   //總記錄數(shù)
 private $myde_size;   //一頁顯示的記錄數(shù)
 private $myde_page;   //當(dāng)前頁
 private $myde_page_count;  //總頁數(shù)
 private $myde_i;    //起頭頁數(shù)
 private $myde_en;    //結(jié)尾頁數(shù)
 private $myde_url;   //獲取當(dāng)前的url
 /*
  * $show_pages
  * 頁面顯示的格式,顯示鏈接的頁數(shù)為2*$show_pages+1。
  * 如$show_pages=2那么頁面上顯示就是[首頁] [上頁] 1 2 3 4 5 [下頁] [尾頁]
  */
 private $show_pages;

 public function __construct($myde_total = 1, $myde_size = 1, $myde_page = 1, $myde_url, $show_pages = 2) {
  $this->myde_total = $this->numeric($myde_total);
  $this->myde_size = $this->numeric($myde_size);
  $this->myde_page = $this->numeric($myde_page);
  $this->myde_page_count = ceil($this->myde_total / $this->myde_size);
  $this->myde_url = $myde_url;
  if ($this->myde_total  0)
   $this->myde_total = 0;
  if ($this->myde_page  1)
   $this->myde_page = 1;
  if ($this->myde_page_count  1)
   $this->myde_page_count = 1;
  if ($this->myde_page > $this->myde_page_count)
   $this->myde_page = $this->myde_page_count;
  $this->limit = ($this->myde_page - 1) * $this->myde_size;
  $this->myde_i = $this->myde_page - $show_pages;
  $this->myde_en = $this->myde_page + $show_pages;
  if ($this->myde_i  1) {
   $this->myde_en = $this->myde_en + (1 - $this->myde_i);
   $this->myde_i = 1;
  }
  if ($this->myde_en > $this->myde_page_count) {
   $this->myde_i = $this->myde_i - ($this->myde_en - $this->myde_page_count);
   $this->myde_en = $this->myde_page_count;
  }
  if ($this->myde_i  1)
   $this->myde_i = 1;
 }

 //檢測是否為數(shù)字
 private function numeric($num) {
  if (strlen($num)) {
   if (!preg_match("/^[0-9]+$/", $num)) {
    $num = 1;
   } else {
    $num = substr($num, 0, 11);
   }
  } else {
   $num = 1;
  }
  return $num;
 }

 //地址替換
 private function page_replace($page) {
  return str_replace("{page}", $page, $this->myde_url);
 }

 //首頁
 private function myde_home() {
  if ($this->myde_page != 1) {
   return "a href='" . $this->page_replace(1) . "' title='首頁'>首頁/a>";
  } else {
   return "p>首頁/p>";
  }
 }

 //上一頁
 private function myde_prev() {
  if ($this->myde_page != 1) {
   return "a href='" . $this->page_replace($this->myde_page - 1) . "' title='上一頁'>上一頁/a>";
  } else {
   return "p>上一頁/p>";
  }
 }

 //下一頁
 private function myde_next() {
  if ($this->myde_page != $this->myde_page_count) {
   return "a href='" . $this->page_replace($this->myde_page + 1) . "' title='下一頁'>下一頁/a>";
  } else {
   return"p>下一頁/p>";
  }
 }

 //尾頁
 private function myde_last() {
  if ($this->myde_page != $this->myde_page_count) {
   return "a href='" . $this->page_replace($this->myde_page_count) . "' title='尾頁'>尾頁/a>";
  } else {
   return "p>尾頁/p>";
  }
 }

 //輸出
 public function myde_write($id = 'page') {
  $str = "div id=" . $id . ">";
  $str.=$this->myde_home();
  $str.=$this->myde_prev();
  if ($this->myde_i > 1) {
   $str.="p class='pageEllipsis'>.../p>";
  }
  for ($i = $this->myde_i; $i = $this->myde_en; $i++) {
   if ($i == $this->myde_page) {
    $str.="a href='" . $this->page_replace($i) . "' title='第" . $i . "頁' class='cur'>$i/a>";
   } else {
    $str.="a href='" . $this->page_replace($i) . "' title='第" . $i . "頁'>$i/a>";
   }
  }
  if ($this->myde_en  $this->myde_page_count) {
   $str.="p class='pageEllipsis'>.../p>";
  }
  $str.=$this->myde_next();
  $str.=$this->myde_last();
  $str.="p class='pageRemark'>共b>" . $this->myde_page_count .
    "/b>頁b>" . $this->myde_total . "/b>條數(shù)據(jù)/p>";
  $str.="/div>";
  return $str;
 }

}

?>

3.css樣式

html, body, div, span, h1, h2, h3, h4, h5, h6, p, pre, 
a, code, em, img, small, strong, sub, sup, u, i, center, 
dl, dt, dd, ol, ul, li, fieldset, form, label {
 margin: 0;
 padding: 0;
 border: 0;
 outline: 0;
 font-size: 100%;
 vertical-align: baseline;
 background: transparent
}

a {
 color: #007bc4;
 text-decoration: none;
 cursor: pointer;
}

.table_parameters a:hover {
 text-decoration: none
}

a:hover {
 text-decoration: underline
}

ol, ul {
 list-style: none
}

table {
 border-collapse: collapse;
 border-spacing: 0
}

/*html {*/
/*background: url(../images/demo_bg.png)*/
/*}*/

body {
 height: 100%;
 font: 12px/18px "Microsoft Yahei", Tahoma, Helvetica, 
 Arial, Verdana, "\5b8b\4f53", sans-serif;
 color: #51555c
}

img {
 border: 0;
 cursor: pointer;
}

.clearfix:after {
 visibility: hidden;
 display: block;
 font-size: 0;
 content: " ";
 clear: both;
 height: 0
}

.head {
 /*border-bottom: 1px solid #dadada;*/
 padding: 0 0 5px
}

.head_inner {
 margin: 0 auto;
 width: 980px
}

.container {
 width: 80%;
 /*min-height: 600px;*/
 margin: 30px auto 0 auto;
 border: 1px solid #d3d3d3;
 background: #fff;
 -moz-border-radius: 5px;
 -khtml-border-radius: 5px;
 -webkit-border-radius: 5px;
 border-radius: 5px
}

.demo > h2.title {
 margin: 4px 0 30px;
 padding: 15px 0 10px 20px;
 border-bottom: 1px solid #d3d3d3;
 font-size: 18px;
 color: #a84c10;
 background: url(../images/arrow.jpg) no-repeat 2px 14px
}

.foot {
 height: 60px;
 padding: 10px 2px;
 line-height: 24px;
 text-align: center
}

.foot a:hover {
 color: #51555c
}

.btn {
 -webkit-border-radius: 3px;
 -moz-border-radius: 3px;
 -ms-border-radius: 3px;
 -o-border-radius: 3px;
 border-radius: 3px;
 background-color: #ff8400;
 color: #fff;
 display: inline-block;
 height: 28px;
 line-height: 28px;
 text-align: center;
 padding: 0 12px;
 transition: background-color .2s linear 0s;
 border: 0;
 cursor: pointer
}

.btn:hover {
 background-color: #e95a00;
 text-decoration: none
}

.demo {
 width: 700px;
 margin: 0 auto
}

ul.ul_demo li {
 background: url("../images/demo_icon.gif") no-repeat scroll 0 6px;
 line-height: 28px;
 padding-left: 20px
}

.input, .table input[type='text'] {
 border: 1px solid #ccc;
 padding: 0 5px;
 width: 220px;
 height: 26px;
 line-height: 26px
}

#nav {
 float: right;
 margin: 30px 0 0
}

#nav li {
 float: left;
 font-size: 16px;
 margin-right: 20px
}

.btn.loading {
 opacity: .5
}

h3 a.cur {
 color: #f30;
}

.demo h3 a {
 font-size: 14px;
 margin: 0 10px 5px 0;
 display: inline-block
}

.red {
 color: red
}

.notice {
 font-size: 14px;
 margin-bottom: 10px;
}

.table_parameters {
 border-left: 1px solid #d3d3d3;
 border-top: 1px solid #d3d3d3;
 margin: 6px auto;
 font-size: 14px
}

.table_parameters tr.tr_head {
 background: none repeat scroll 0 0 #f7f7f7;
 font-weight: bold;
 padding: 6px;
 text-align: center
}

.table_parameters td, .table_parameters th {
 border-bottom: 1px solid #d3d3d3;
 border-right: 1px solid #d3d3d3;
 line-height: 26px;
 padding: 2px
}

h1 {
 font: 32px "Microsoft Yahei";
 margin: 40px auto;
 text-align: center;
}

h2 {
 font-size: 16px;
 margin: 10px 0;
}

.menu {
 height: 30px;
 margin-bottom: 30px;
 padding: 10px;
 background-color: #f0f0f0;
 text-align: center;
}

.menu a {
 display: inline-block;
 height: 30px;
 padding: 0 20px;
 line-height: 30px;
 font-size: 14px;
 color: #333;
 text-decoration: none;
}

.menu a:hover {
 color: #000;
 background-color: #e9e9e9;
}

.menu .cur {
 background-color: #ddd !important;
 color: #000;
}

.vad a {
 display: inline-block;
 height: 36px;
 line-height: 36px;
 margin: 0 5px;
 padding: 0 50px;
 font-size: 14px;
 text-align: center;
 color: #eee;
 text-decoration: none;
 background-color: #222;
}

.vad a:hover {
 color: #fff;
 background-color: #000;
}

.thead {
 width: 728px;
 height: 90px;
 margin: 0 auto;
}

textarea {
 border: 1px solid #ccc;
 font-size: 12px;
 height: 100px;
 line-height: 18px;
 padding: 5px;
 width: 300px;
}

.table td {
 padding: 10px 0
}

.disabled {
 opacity: .6;
 filter: alpha(opacity=60)
}
.demo > p {
 line-height: 30px;
 font-size: 14px
}

.demo > p a {
 font-size: 14px
}

.demo h3 {
 font-size: 16px;
 margin: 20px 0
}

select {
 background-color: #fff;
 background-position: right center;
 background-repeat: no-repeat;
 border: 1px solid #888;
 border-radius: 3px;
 box-sizing: border-box;
 font: 12px/1.5 Tahoma, Arial, sans-serif;
 height: 30px;
 padding: 0 4px;
}

fieldset {
 border: 1px solid #ccc;
 border-radius: 5px;
 margin: 1em 0;
 padding: 10px 20px;
}

dl.row dt {
 width: 2em;
}

dl.row dt {
 clear: left;
 float: left;
 line-height: 30px;
 padding: 5px;
 text-align: right;
 width: 6em;
}

dl.row dd {
 float: left;
 padding: 5px;
}

.pager {
 text-align: right;
}

.pager a {
 padding: 3px 8px;
 margin-left: 3px;
 line-height: 20px;
 background: #f9f9f9;
 border: 1px solid #DBDBDB;
 text-decoration: none
}

.pager a:hover,
.pager a.current {
 background-color: #7CD5B1;
 color: #fff;
 border: 1px solid #7CD5B1;
 cursor: pointer;
}

.page {
 text-align: center;
 margin: 50px 0
}

.page a, .page span.prev_disabled {
 border: 1px solid #ededed;
 color: #3d3d3d;
 font-weight: 700;
 height: 35px;
 line-height: 35px;
 margin-left: 5px;
 min-width: 9px;
 padding: 0 13px;
 text-align: center;
 text-decoration: none;
 vertical-align: top;
 font-family: "simsun";
 display: inline-block
}

.page span.prev_disabled {
 cursor: default;
 color: #ccc;
 margin: 0 10px 0 0
}

.page a.current {
 background-color: #f40;
 border-color: #f40;
 color: #fff;
 font-weight: 700;
 position: relative;
 z-index: 1;
}

.page .extra {
 display: inline-block;
 margin-left: 10px;
 height: 35px;
 line-height: 35px;
 color: #656565;
}

.page .page-num {
 border: 1px solid #ededed;
 height: 21px;
 text-align: center;
 width: 35px;
 display: inline-block
}

.page .page-submit {
 background-clip: padding-box;
 border: 1px solid #ededed;
 border-radius: 2px;
 cursor: pointer;
 height: 21px;
 line-height: 21px;
 text-align: center;
 width: 43px;
 display: inline-block
}

.page .page-submit:hover {
 border-color: #f40;
 color: #f40;
}

.page a:focus, .page a:hover {
 border-color: #f40;
 z-index: 1;
}

.loading {
 margin: 30px 0;
 text-align: center
}

p {
 margin: 0
}

#page {
 height: 40px;
 padding: 20px 0px;
}

#page a {
 display: block;
 float: left;
 margin-right: 10px;
 padding: 2px 12px;
 height: 24px;
 border: 1px #cccccc solid;
 background: #fff;
 text-decoration: none;
 color: #808080;
 font-size: 12px;
 line-height: 24px;
}

#page a:hover {
 color: #077ee3;
 border: 1px #077ee3 solid;
}

#page a.cur {
 border: none;
 background: #077ee3;
 color: #fff;
}

#page p {
 float: left;
 padding: 2px 12px;
 font-size: 12px;
 height: 24px;
 line-height: 24px;
 color: #bbb;
 border: 1px #ccc solid;
 background: #fcfcfc;
 margin-right: 8px;

}

#page p.pageRemark {
 border-style: none;
 background: none;
 margin-right: 0px;
 padding: 4px 0px;
 color: #666;
}

#page p.pageRemark b {
 color: red;
}

#page p.pageEllipsis {
 border-style: none;
 background: none;
 padding: 4px 0px;
 color: #808080;
}

.dates li {
 font-size: 14px;
 margin: 20px 0
}

.dates li span {
 text-align: center
}

td {
 font-size: 15px;
 margin: 20px 0
}

具體的大家可以多學(xué)習(xí)別人的php分頁類然后多練就可以了。

您可能感興趣的文章:
  • PHP封裝的page分頁類定義與用法完整示例
  • PHP封裝的完整分頁類示例
  • thinkPHP框架可添加js事件的分頁類customPage.class.php完整實(shí)例
  • php封裝的page分頁類完整實(shí)例
  • php自定義分頁類完整實(shí)例

標(biāo)簽:宜賓 寶雞 鎮(zhèn)江 銅川 湛江 南陽 婁底 黃南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《php封裝的page分頁類完整實(shí)例代碼》,本文關(guān)鍵詞  php,封,裝的,page,分頁,類,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《php封裝的page分頁類完整實(shí)例代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于php封裝的page分頁類完整實(shí)例代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章