首先一个分页类,如下(摘自网络)可拷贝直接使用
<?php /* * Created on 2013-12-3 * 分页类 * To change the template for this generated file go to * Window - Preferences - PHPeclipse - PHP - Code Templates */ class Pagination { private $each_disNums; //每页显示的条目数 private $nums; //总条目数 private $current_page; //当前被选中的页 private $sub_pages; //每次显示的页数 private $pageNums; //总页数 private $page_array = array (); //用来构造分页的数组 private $subPage_link; //每个分页的链接 private $subPage_type; //显示分页的类型 /* __construct是SubPages的构造函数,用来在创建类的时候自动运行. @$each_disNums 每页显示的条目数 @nums 总条目数 @current_num 当前被选中的页 @sub_pages 每次显示的页数 @subPage_link 每个分页的链接 @subPage_type 显示分页的类型 当@subPage_type=1的时候为普通分页模式 example: 共4523条记录,每页显示10条,当前第1/453页 [首页] [上页] [下页] [尾页] 当@subPage_type=2的时候为经典分页样式 example: 当前第1/453页 [首页] [上页] 1 2 3 4 5 6 7 8 9 10 [下页] [尾页] */ function __construct($each_disNums, $nums, $current_page, $sub_pages, $subPage_link, $subPage_type) { $this->each_disNums = intval($each_disNums); $this->nums = intval($nums); if (!$current_page) { $this->current_page = 1; } else { $this->current_page = intval($current_page); } $this->sub_pages = intval($sub_pages); $this->pageNums = ceil($nums / $each_disNums); $this->subPage_link = $subPage_link; $this->show_SubPages($subPage_type); //echo $this->pageNums."--".$this->sub_pages; } /* __destruct析构函数,当类不在使用的时候调用,该函数用来释放资源。 */ function __destruct() { unset ($each_disNums); unset ($nums); unset ($current_page); unset ($sub_pages); unset ($pageNums); unset ($page_array); unset ($subPage_link); unset ($subPage_type); } /* show_SubPages函数用在构造函数里面。而且用来判断显示什么样子的分页 */ function show_SubPages($subPage_type) { if ($subPage_type == 1) { $this->subPageCss1(); } elseif ($subPage_type == 2) { $this->subPageCss2(); } } /* 用来给建立分页的数组初始化的函数。 */ function initArray() { for ($i = 0; $i < $this->sub_pages; $i++) { $this->page_array[$i] = $i; } return $this->page_array; } /* construct_num_Page该函数使用来构造显示的条目 即使:[1][2][3][4][5][6][7][8][9][10] */ function construct_num_Page() { if ($this->pageNums < $this->sub_pages) { $current_array = array (); for ($i = 0; $i < $this->pageNums; $i++) { $current_array[$i] = $i +1; } } else { $current_array = $this->initArray(); if ($this->current_page <= 3) { for ($i = 0; $i < count($current_array); $i++) { $current_array[$i] = $i +1; } } elseif ($this->current_page <= $this->pageNums && $this->current_page > $this->pageNums - $this->sub_pages + 1) { for ($i = 0; $i < count($current_array); $i++) { $current_array[$i] = ($this->pageNums) - ($this->sub_pages) + 1 + $i; } } else { for ($i = 0; $i < count($current_array); $i++) { $current_array[$i] = $this->current_page - 2 + $i; } } } return $current_array; } /* 构造普通模式的分页 共4523条记录,每页显示10条,当前第1/453页 [首页] [上页] [下页] [尾页] */ function subPageCss1() { $subPageCss1Str = ""; $subPageCss1Str .= "共" . $this->nums . "条记录,"; $subPageCss1Str .= "每页显示" . $this->each_disNums . "条,"; $subPageCss1Str .= "当前第" . $this->current_page . "/" . $this->pageNums . "页 "; if ($this->current_page > 1) { http://blog.csdn.net/tangcheng_ok/article/details/$firstPageUrl = $this->subPage_link . "1"; http://blog.csdn.net/tangcheng_ok/article/details/$prewPageUrl = $this->subPage_link . ($this->current_page - 1); $subPageCss1Str .= "[首页] "; $subPageCss1Str .= "[上一页] "; } else { $subPageCss1Str .= "[首页] "; $subPageCss1Str .= "[上一页] "; } if ($this->current_page < $this->pageNums) { http://blog.csdn.net/tangcheng_ok/article/details/$lastPageUrl = $this->subPage_link . $this->pageNums; http://blog.csdn.net/tangcheng_ok/article/details/$nextPageUrl = $this->subPage_link . ($this->current_page + 1); $subPageCss1Str .= " [下一页] "; $subPageCss1Str .= "[尾页] "; } else { $subPageCss1Str .= "[下一页] "; $subPageCss1Str .= "[尾页] "; } echo $subPageCss1Str; } /* 构造经典模式的分页 当前第1/453页 [首页] [上页] 1 2 3 4 5 6 7 8 9 10 [下页] [尾页] */ function subPageCss2() { $subPageCss2Str = ""; $subPageCss2Str .= "当前第" . $this->current_page . "/" . $this->pageNums . "页 "; if ($this->current_page > 1) { http://blog.csdn.net/tangcheng_ok/article/details/$firstPageUrl = $this->subPage_link . "1"; http://blog.csdn.net/tangcheng_ok/article/details/$prewPageUrl = $this->subPage_link . ($this->current_page - 1); $subPageCss2Str .= " 首页 "; $subPageCss2Str .= " 上一页 "; } else { $subPageCss2Str .= " 首页 "; $subPageCss2Str .= " 上一页 "; } $a = $this->construct_num_Page(); for ($i = 0; $i < count($a); $i++) { $s = $a[$i]; if ($s == $this->current_page) { $subPageCss2Str .= " <span style='color:red;font-weight:bold;'>" . $s . " "; } else { http://blog.csdn.net/tangcheng_ok/article/details/$url = $this->subPage_link . $s; $subPageCss2Str .= " " . $s . " "; } } if ($this->current_page < $this->pageNums) { http://blog.csdn.net/tangcheng_ok/article/details/$lastPageUrl = $this->subPage_link . $this->pageNums; http://blog.csdn.net/tangcheng_ok/article/details/$nextPageUrl = $this->subPage_link . ($this->current_page + 1); $subPageCss2Str .= " 下一页 "; $subPageCss2Str .= " 尾页 "; } else { $subPageCss2Str .= " 下一页 "; $subPageCss2Str .= " 尾页 "; } echo $subPageCss2Str; } } ?>
在需要分页的php文件中
include_once ("Pagination.php"); //每页显示的条数 $pageSize = 10; //总条目数 $pageTotal = $db->get_var("select count(*) from tb"); //每次显示的页数 $sub_pages = 10; //得到当前是第几页 if (is_array($_GET) && count($_GET) > 0) { if (isset ($_GET["p"])) { //是否存在"id"的参数 $pageCurrent = $_GET["p"]; } } else { $pageCurrent = 1; } $goodses = $db->get_results("SELECT g.id,* FROM tb as g INNER JOIN (select id from tb order by updatetime desc limit " . ($pageCurrent -1) * $pageSize . ",10 )as g1 ON g.id=g1.id");
显示分页数据
<?php $subPages = new Pagination($pageSize, $pageTotal, $pageCurrent, $sub_pages, "index.php?p=", 2);?>
效果图:
注:本文的Pagination类来自网络,没有标注网址,在原代码的基础上进行了修改,如果涉及任何问题,请留言。在此感谢作者,并作出上述声明。
转载请注明出处:http://blog.csdn.net/tangcheng_ok
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事
アサシンのクリードシャドウズ:シーシェルリドルソリューション
1 か月前ByDDD
Atomfallのクレーンコントロールキーカードを見つける場所
1 か月前ByDDD
Inzoi:学校と大学への応募方法
3週間前ByDDD

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

WebStorm Mac版
便利なJavaScript開発ツール

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ホットトピック
Gmailメールのログイン入り口はどこですか?
7759
15


Java チュートリアル
1644
14


CakePHP チュートリアル
1399
52


Laravel チュートリアル
1293
25


PHP チュートリアル
1234
29

