校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > PHP封裝的page分頁類定義與用法完整示例

PHP封裝的page分頁類定義與用法完整示例

熱門標簽:亳州企業外呼系統 地圖標注怎么做商戶驗證 海南外呼系統方案 蘇州外呼系統有效果嗎 山東電銷卡外呼系統原理是什么 兼職做地圖標注好賺錢嗎 智能電銷語音機器人資訊 打開百度地圖標注 400 電話 辦理

本文實例講述了PHP封裝的page分頁類定義與用法。分享給大家供大家參考,具體如下:

親測有效,見下圖=========>

1. 測試實例test.php

?php
header("Content-Type: text/html; charset=utf-8");
date_default_timezone_set("Asia/Shanghai"); //時區
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">報表/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>訂閱狀態/td>
          td>商品狀態/td>
          td>修改時間/td>
          td>創建時間/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) {//總記錄數大于每頁顯示數,顯示分頁
        $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
 * @參數:  $myde_total - 總記錄數
 *     $myde_size - 一頁顯示的記錄數
 *     $myde_page - 當前頁
 *     $myde_url - 獲取當前的url
 * @功能:  分頁實現
 */
class page {
  private $myde_total;     //總記錄數
  private $myde_size;      //一頁顯示的記錄數
  private $myde_page;      //當前頁
  private $myde_page_count;   //總頁數
  private $myde_i;       //起頭頁數
  private $myde_en;       //結尾頁數
  private $myde_url;      //獲取當前的url
  /*
   * $show_pages
   * 頁面顯示的格式,顯示鏈接的頁數為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;
  }
  //檢測是否為數字
  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>條數據/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
}

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php+mysql數據庫操作入門教程》、《php+mysqli數據庫程序設計技巧總結》、《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》、《PHP網絡編程技巧總結》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

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

標簽:紹興 溫州 清遠 綏化 金華 安康 萊蕪 呼倫貝爾

巨人網絡通訊聲明:本文標題《PHP封裝的page分頁類定義與用法完整示例》,本文關鍵詞  PHP,封,裝的,page,分頁,類,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP封裝的page分頁類定義與用法完整示例》相關的同類信息!
  • 本頁收集關于PHP封裝的page分頁類定義與用法完整示例的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 平江县| 阿城市| 将乐县| 沁水县| 田林县| 永年县| 泗阳县| 定南县| 新宁县| 南宁市| 旬阳县| 互助| 寿宁县| 原阳县| 华池县| 巨野县| 遂川县| 柳江县| 尼木县| 彩票| 酒泉市| 林西县| 利川市| 东丽区| 吉安市| 南雄市| 石门县| 紫阳县| 池州市| 大庆市| 钟祥市| 定远县| 宝清县| 平邑县| 南投县| 团风县| 太谷县| 万源市| 高唐县| 碌曲县| 西和县|