本文目录
- php怎么实现分页
- PHP如何实现分页显示
- 用PHP如何实现分页并能够实现上一页,下一页,跳转到()页的功能
- 如何将php里面的数组内容进行分页显示出来
- php中mysql语句怎么写分页
- PHP分页问题,如何分页
- php分页显示
- PHP分页代码
- php 分页类怎么用啊
php怎么实现分页
/** * 获取分页的HTML内容 * @param integer $page 当前页 * @param integer $pages 总页数 * @param string $url 跳转url地址 最后的页数以 ’&page=x’ 追加在url后面 * * @return string HTML内容; */ public static function getPageHtml($page, $pages, $url){ //最多显示多少个页码 $_pageNum = 5; //当前页面小于1 则为1 $page = $page《1?1:$page; //当前页大于总页数 则为总页数 $page = $page 》 $pages ? $pages : $page; //页数小当前页 则为当前页 $pages = $pages 《 $page ? $page : $pages; //计算开始页 $_start = $page - floor($_pageNum/2); $_start = $_start《1 ? 1 : $_start; //计算结束页 $_end = $page + floor($_pageNum/2); $_end = $_end》$pages? $pages : $_end; //当前显示的页码个数不够最大页码数,在进行左右调整 $_curPageNum = $_end-$_start+1; //左调整 if($_curPageNum《$_pageNum && $_start》1){ $_start = $_start - ($_pageNum-$_curPageNum); $_start = $_start《1 ? 1 : $_start; $_curPageNum = $_end-$_start+1; } //右边调整 if($_curPageNum《$_pageNum && $_end《$pages){ $_end = $_end + ($_pageNum-$_curPageNum); $_end = $_end》$pages? $pages : $_end; } $_pageHtml = ’《ul class=“pagination“》’; /*if($_start == 1){ $_pageHtml .= ’《li》《a title=“第一页“》«《/a》《/li》’; }else{ $_pageHtml .= ’《li》《a title=“第一页“ href=“’.$url.’&page=1“》«《/a》《/li》’; }*/ if($page》1){ $_pageHtml .= ’《li》《a title=“上一页“ href=“’.$url.’&page=’.($page-1).’“》«《/a》《/li》’; } for ($i = $_start; $i 《= $_end; $i++) { if($i == $page){ $_pageHtml .= ’《li class=“active“》《a》’.$i.’《/a》《/li》’; }else{ $_pageHtml .= ’《li》《a href=“’.$url.’&page=’.$i.’“》’.$i.’《/a》《/li》’; } } /*if($_end == $pages){ $_pageHtml .= ’《li》《a title=“最后一页“》»《/a》《/li》’; }else{ $_pageHtml .= ’《li》《a title=“最后一页“ href=“’.$url.’&page=’.$pages.’“》»《/a》《/li》’; }*/ if($page《$_end){ $_pageHtml .= ’《li》《a title=“下一页“ href=“’.$url.’&page=’.($page+1).’“》»《/a》《/li》’; } $_pageHtml .= ’《/ul》’; echo $_pageHtml; }
PHP如何实现分页显示
【文件名】: c_mysql_page.inc // 【作 用】: MySQL分页函数类 // 【作 者】: 天灰 // // 【最后修改日期】: 2001/07/16[cxx] // 【变量定义规则】:‘C_’=字符型,‘I_’=整型,‘N_’=数字型,‘L_’=布尔型,‘A_’=数组型 //------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------ // ※c_mysql_page() 构造函数,设置分页初始参数 // ※page_standard() 分页显示函数(标准型) // ※GetRecordStartEnd() 获得取记录的开始结束位置 // ※getmaxpage() 获得记录集的最大页数 // ※checkpage() 检查当前页数是否在0和最大页数之间 //------------------------------------------------------------------------------------------ class c_mysql_page { //------------------------------------------------------------------------------------------ // 变量定义 //------------------------------------------------------------------------------------------ var $I_pagesize = 10; //每页记录数 var $C_width = ’80%’; //表格宽度 //------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------ // 函数名:c_mysql_page ($I_pagesize, $c_width) // 作 用:构造函数,设置分页初始参数 // 参 数:$I_pagesize, $c_width // 返回值:变量 // 备 注:构造函数随着类的建立而自动执行 //------------------------------------------------------------------------------------------ function c_mysql_page ($I_pagesize=10, $C_width=’80%’) { if (isset($I_pagesize)){$this -》 I_pagesize = $I_pagesize;} if (isset($C_width)){$this -》 C_width = $C_width;} } //------------------------------------------------------------------------------------------ // 函数名:page_standard($I_sumrecord,$C_page,$C_url=“self“,$C_otherpara=““) // 作 用:分页显示函数(标准型) // 参 数:$I_sumrecord 记录总数 // $C_url URL // $C_page URL后的参数 // $C_otherpara URL后的参数2 // $bgcolor 表格的背景颜色 // 返回值: // 备 注:无 //------------------------------------------------------------------------------------------ function page_standard($I_sumrecord,$C_page,$C_url=“self“,$C_otherpara=““,$bgcolor=““) { //检查参数 if ((!$I_sumrecord) || (!$C_page)){AlertExit(“参数不全!“);} global $PHP_SELF,$$C_page; //全局变量$C_page //检测$I_pagesize是否合法 if($this -》 I_pagesize 《 1){AlertExit(“请设定每页的记录数!“);} if($I_sumrecord 《 1){return false;} //检测总记录数 if($C_url == “self“){$C_url = $PHP_SELF;} //设置URL $I_page = $$C_page; //重新赋当前页值 $I_maxpage = $this -》 getmaxpage($I_sumrecord); //取出总页数 $I_page = $this -》 checkPage($I_maxpage,$I_page); //检查当前页号 //显示表 echo ““; echo ““; echo “共“ . $I_sumrecord. “条主题 当前第“ . $I_page . “/“. $I_maxpage. “页“; if ($I_maxpage 》 1) { echo ““; if($I_page 》 1 && $I_page 《 $I_maxpage) { echo “首页“; $pre=$I_page-1; echo “上页“; $next=$I_page+1; echo “下页“; echo “末页“; } elseif($I_page == 1) { $next = $I_page+1; echo “下页“; echo “末页“; } elseif($I_page == $I_maxpage) { echo “首页“; $pre=$I_page-1; echo “上页“; } //显示select echo “转到“; echo ““;//OnChange=“.WindowLocation($C_url,$C_otherpara,$C_page).“ for($i=1;$i I_pagesize; $I_pagesize = $this -》 I_pagesize; } //------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------ // 函数名:getmaxpage($intRecordNum) // 作 用:获得记录集的最大页数 // 参 数:$I_sumrecord 记录总数 // 返回值:最大页数$I_maxpage(整型) // 备 注:无 //------------------------------------------------------------------------------------------ function getmaxpage($I_sumrecord) { if (!$I_sumrecord){AlertExit(“参数不全!》
用PHP如何实现分页并能够实现上一页,下一页,跳转到()页的功能
《html》《head》《title》分页示例(php《/title》《meta http-equiv=“Content-Type“ content=“text/html; charset=gb2312“》《/head》《body》《?php $pagesize=10; //设定每一页显示的记录数$conn=mysql_connect(“localhost“,“root“,“jrq“);mysql_select_db(“sj“,$conn);$rs = mysql_query( “select * from `dw_newsdata`“,$conn); //这里有第二个可选参数,指定打开的连接//-----------------------------------------------------------------------------------------------////分页逻辑处理//-----------------------------------------------------------------------------------------------$tmpArr = mysql_fetch_array($rs);$numAL = mysql_num_rows($rs); //取得记录总数$rs$pages=intval($numAL/$pagesize); //计算总页数if ($numAL % $pagesize) $pages++;//设置缺省页码//↓判断“当前页码”是否赋值过if (isset($_GET[’page’])){ $page=intval($_GET[’page’]); }else{ $page=1; }//否则,设置为第一页//↓计算记录偏移量$offset=$pagesize*($page - 1);//↓读取指定记录数$rs=mysql_query(“select * from `dw_newsdata` limit $offset,$pagesize“,$conn);//取得—当前页—记录集!$curNum = mysql_num_rows($rs); //$curNum - 当前页实际记录数,for循环输出用?》 《table border=“0“ width=“80%“》《tr》 《td width=“50%“ bgcolor=“#E0E0E0“》标题《/td》 《td width=“50%“ bgcolor=“#E0E0E0“》发布时间《/td》《/tr》《?phpwhile ($tmpArr = mysql_fetch_array($rs)) //提取一行,并循环判断{$i=0; // for($a=0;$a《$ColNum;$a++) //==for结束==?》 《tr》 《td width=“50%“》《?= $tmpArr; //$tmpArr[“news_title“] ; ?》《/td》 《td width=“50%“》《?php echo $tmpArr; //$tmpArr[“news_cont“]; ?》《/td》《/tr》《?php}//==while结束==?》《/table》《?php//============================//// 翻页显示 一 //============================//echo “《p》“; // align=center$first=1;$prev=$page-1; $next=$page+1;$last=$pages;if ($page 》 1){echo “《a href=’?page=“.$first.“’》首页《/a》 “;echo “《a href=’?page=“.$prev.“’》上一页《/a》 “;}if ($page 《 $pages){echo “《a href=’?page=“.$next.“’》下一页《/a》 “;echo “《a href=’?page=“.$last.“’》尾页《/a》 “;}//============================//// 翻页显示 二 //============================//echo “ | 共有“.$pages.“页(“.$page.“/“.$pages.“)“;for ($i=1;$i《 $page;$i++){echo “《a href=’?page=“.$i.“’》[“.$i .“]《/a》 “;} // 1-先输出当前页之前的if ($page 》 0) echo “[“.$page.“]“;; // 2-再输出当前页for ($i=$page+1;$i《=$pages;$i++){echo “《a href=’?page=“.$i.“’》[“.$i .“]《/a》 “;}// 3-接着输出当前页之后echo “转到第 《INPUT maxLength=3 size=3 value=“.($page+1).“ name=gotox》 页 《INPUT hideFocus onclick=\“location.href=’?page=gotox.value’;\“ type=button value=Go name=cmd_goto》“; echo “《/p》“;?》《/body》《/html》
如何将php里面的数组内容进行分页显示出来
1、前言 分页显示是一种非常常见的浏览和显示大量数据的方法,属于web编程中最常处理的事件之一。对于web编程的老手来说,编写这种代码实在是和呼吸一样自然,但是对于初学者来说,常常对这个问题摸不着头绪,因此特地撰写此文对这个问题进行详细的讲解,力求让看完这篇文章的朋友在看完以后对于分页显示的原理和实现方法有所了解。本文适合初学者阅读,所有示例代码均使用php编写。 2、原理 所谓分页显示,也就是将数据库中的结果集人为的分成一段一段的来显示,这里需要两个初始的参数: 每页多少条记录($PageSize)? 当前是第几页($CurrentPageID)? 现在只要再给我一个结果集,我就可以显示某段特定的结果出来。 至于其他的参数,比如:上一页($PreviousPageID)、下一页($NextPageID)、总页数($numPages)等等,都可以根据前边这几个东西得到。 以mysql数据库为例,如果要从表内截取某段内容,sql语句可以用:select * from table limit offset, rows。看看下面一组sql语句,尝试一下发现其中的规率。 前10条记录:select * from table limit 0,10 第11至20条记录:select * from table limit 10,10 第21至30条记录:select * from table limit 20,10 …… 这一组sql语句其实就是当$PageSize=10的时候取表内每一页数据的sql语句,我们可以总结出这样一个模板: select * from table limit ($CurrentPageID - 1) * $PageSize, $PageSize 拿这个模板代入对应的值和上边那一组sql语句对照一下看看是不是那么回事。搞定了最重要的如何获取数据的问题以后,剩下的就仅仅是传递参数,构造合适的sql语句然后使用php从数据库内获取数据并显示了。以下我将用具体代码加以说明。 3、简单代码 请详细阅读以下代码,自己调试运行一次,最好把它修改一次,加上自己的功能,比如搜索等等。 《?php // 建立数据库连接 $link = mysql_connect(“localhost“, “mysql_user“, “mysql_password“) or die(“Could not connect: “ . mysql_error()); // 获取当前页数 if( isset($_GET[’page’]) ){ $page = intval( $_GET[’page’] ); } else{ $page = 1; } // 每页数量 $PageSize = 10; // 获取总数据量 $sql = “select count(*) as amount from table“; $result = mysql_query($sql); $row = mysql_fetch_row($result); $amount = $row[’amount’]; // 记算总共有多少页 if( $amount ){ if( $amount 《 $page_size ) //如果总数据量小于$PageSize,那么只有一页 if( $amount % $page_size ){ //取总数据量除以每页数的余数 $page_count = (int)($amount / $page_size) + 1; //如果有余数,则页数等于总数据量除以每页数的结果取整再加一 }else{ $page_count = $amount / $page_size; //如果没有余数,则页数等于总数据量除以每页数的结果 } } else{ $page_count = 0; } // 翻页链接 $page_string = ’’; if( $page == 1 ){ $page_string .= ’第一页|上一页|’; } else{ $page_string .= ’《a href=“/?page=1》“;第一页《/a》|《a href=“/?page=’.“($page-1).’》上一页《/a》|’; } if( ($page == $page_count) || ($page_count == 0) ){ $page_string .= ’下一页|尾页’; } else{ $page_string .= ’《a href=“/?page=’.“($page+1).’》下一页《/a》|《a href=“/?page=’.“$page_count.’》尾页《/a》’; } // 获取数据,以二维数组格式返回结果 if( $amount ){ $sql = “select * from table order by id desc limit “. ($page-1)*$page_size .“, $page_size“; $result = mysql_query($sql); while ( $row = mysql_fetch_row($result) ){ $rowset = $row; } }else{ $rowset = array(); } // 没有包含显示结果的代码,那不在讨论范围,只要用foreach就可以很简单的用得到的二维数组来显示结果 ?》 4、OO风格代码 以下代码中的数据库连接是使用的pear db类进行处理 《?php // FileName: Pager.class.php // 分页类,这个类仅仅用于处理数据结构,不负责处理显示的工作 Class Pager { var $PageSize; //每页的数量 var $CurrentPageID; //当前的页数 var $NextPageID; //下一页 var $PreviousPageID; //上一页 var $numPages; //总页数 var $numItems; //总记录数 var $isFirstPage; //是否第一页 var $isLastPage; //是否最后一页 var $sql; //sql查询语句 function Pager($option) { global $db; $this-》_setOptions($option); // 总条数 if ( !isset($this-》numItems) ) { $res = $db-》query($this-》sql); $this-》numItems = $res-》numRows(); } // 总页数 if ( $this-》numItems 》 0 ) { if ( $this-》numItems 《 $this-》PageSize ) if ( $this-》numItems % $this-》PageSize ) { $this-》numPages= (int)($this-》numItems / $this-》PageSize) + 1; } else { $this-》numPages = $this-》numItems / $this-》PageSize; } } else { $this-》numPages = 0; } switch ( $this-》CurrentPageID ) { case $this-》numPages == 1: $this-》isFirstPage = true; $this-》isLastPage = true; break; case 1: $this-》isFirstPage = true; $this-》isLastPage = false; break; case $this-》numPages: $this-》isFirstPage = false; $this-》isLastPage = true; break; default: $this-》isFirstPage = false; $this-》isLastPage = false; } if ( $this-》numPages 》 1 ) { if ( !$this-》isLastPage ) if ( !$this-》isFirstPage ) } return true; } /*** * * 返回结果集的数据库连接 * 在结果集比较大的时候可以直接使用这个方法获得数据库连接,然后在类之外遍历,这样开销较小 * 如果结果集不是很大,可以直接使用getPageData的方式获取二维数组格式的结果 * getPageData方法也是调用本方法来获取结果的 * ***/ function getDataLink() { if ( $this-》numItems ) { global $db; $PageID = $this-》CurrentPageID; $from = ($PageID - 1)*$this-》PageSize; $count = $this-》PageSize; $link = $db-》limitQuery($this-》sql, $from, $count); //使用Pear DB::limitQuery方法保证数据库兼容性 return $link; } else { return false; } } /*** * * 以二维数组的格式返回结果集 * ***/ function getPageData() { if ( $this-》numItems ) { if ( $res = $this-》getDataLink() ) { if ( $res-》numRows() ) { while ( $row = $res-》fetchRow() ) { $result = $row; } } else { $result = array(); } return $result; } else { return false; } } else { return false; } } function _setOptions($option) { $allow_options = array( ’PageSize’, ’CurrentPageID’, ’sql’, ’numItems’ ); foreach ( $option as $key =》 $value ) { if ( in_array($key, $allow_options) && ($value != null) ) { $this-》$key = $value; } } return true; } } ?》 《?php // FileName: test_pager.php // 这是一段简单的示例代码,前边省略了使用pear db类建立数据库连接的代码 require “Pager.class.php“; if ( isset($_GET[’page’]) ) { $page = (int)$_GET[’page’]; } else { $page = 1; } $sql = “select * from table order by id“; $pager_option = array( “sql“ =》 $sql, “PageSize“ =》 10, “CurrentPageID“ =》 $page ); if ( isset($_GET[’numItems’]) ) { $pager_option[’numItems’] = (int)$_GET[’numItems’]; } $pager = @new Pager($pager_option); $data = $pager-》getPageData(); if ( $pager-》isFirstPage ) { $turnover = “首页|上一页|“; } else { $turnover = “《a href=’?page=1&numItems=“.$pager-》numItems.“’》首页《/a》|《a href=“/?page=“.$pager-》PreviousPageID.“&numItems=“.$pager-》numItems.“’》上一页《/a》|“; } if ( $pager-》isLastPage ) { $turnover .= “下一页|尾页“; } else { $turnover .= “《a href=“/?page=“.$pager-》NextPageID.“&numItems=“.$pager-》numItems.“’》下一页《/a》|《a href=“/?page=“.$pager-》numPages.“&numItems=“.$pager-》numItems.“’》尾页《/a》“; } ?》 需要说明的地方有两个: 这个类仅仅处理数据,并不负责处理显示,因为我觉得将数据的处理和结果的显示都放到一个类里边实在是有些勉强。显示的时候情况和要求多变,不如自己根据类给出的结果处理,更好的方法是根据这个Pager类继承一个自己的子类来显示不同的分页,比如显示用户分页列表可以: 《?php Class MemberPager extends Pager { function showMemberList() { global $db; $data = $this-》getPageData(); // 显示结果的代码 // ...... } } /// 调用 if ( isset($_GET[’page’]) ) { $page = (int)$_GET[’page’]; } else { $page = 1; } $sql = “select * from members order by id“; $pager_option = array( “sql“ =》 $sql, “PageSize“ =》 10, “CurrentPageID“ =》 $page ); if ( isset($_GET[’numItems’]) ) { $pager_option[’numItems’] = (int)$_GET[’numItems’]; } $pager = @new MemberPager($pager_option); $pager-》showMemberList(); ?》 第二个需要说明的地方就是不同数据库的兼容性,在不同的数据库里截获一段结果的写法是不一样的。 mysql: select * from table limit offset, rows pgsql: select * from table limit m offset n ...... 所以要在类里边获取结果的时候需要使用pear db类的limitQuery方法。 ok,写完收功,希望花时间看完这些文字的你不觉得是浪费了时间。回答者另外,虚机团上产品团购,超级便宜
php中mysql语句怎么写分页
分页在我们日常生活中的网页很常见,也是每个程序员必须要掌握的。
1.数据库语句 select * from databaseName limit 0,5;(查找从0开始的5条数据);
2.url解析:parse_url
3.$_SERVER[REQUEST_URL]获取当前的地址。
上面的是php分页的基本知识:
《?php
$con=mysql_connect(“localhost“,“root“,“123456“) or die(“could not connect“.mysql_error);//连接数据库
mysql_select_db(“test“,$con);
$pagesize=10;
$url=$_SERVER[“REQUEST_URI“];//解析当前地址
$url=parse_url($url);
$url=$url[path];
$numq=mysql_query(select * from text );
$num=mysql_num_rows($numq);//获取数据库的条数
if($_GET[page]){
$pageval=$_GET[page];
$page=($pageval-1)*$pagesize;
$page.=’,’;
}
$int=ceil($num/$pagesize);
if( $pageval》=$int){
echo $int;
$pageval=$int-1;
};
$SQL=“SELECT * FROM text limit $page $pagesize “;
$query=mysql_query($SQL);
while($row=mysql_fetch_array($query)){
echo “《div id=’wen’》《span id=’wenzhang_title’》“.$row[’title’].“《/span》《div class=’neirong’》《span》“.$row[’wenzhang’].“《/span》《/div》《div class=’time’》“.$row[’time’].“《/div》《/div》“;
}
if($num 》 $pagesize){
if($pageval《=1)$pageval=1;
echo “共 $num 条“.
“ 《a href=$url?page=“.($pageval-1).“》上一页《/a》 《a href=$url?page=“.($pageval+1).“》下一页《/a》“;
}
?》
PHP分页问题,如何分页
《?phpclass page{private $pagesize;private $lastpage;private $totalpages;private $nums;private $numPage=1;function __construct($page_size,$total_nums){$this-》pagesize=$page_size;//每页显示的数据条数$this-》nums=$total_nums;//总的数据条数$this-》lastpage=ceil($this-》nums/$this-》pagesize);//最后一页$this-》totalpages=ceil($this-》nums/$this-》pagesize);//总得分页数if(!empty($_GET[page])){$this-》numPage=$_GET[page];if(!is_int($this-》numPage))$this-》numPage=(int)$this-》numPage;if($this-》numPage《1)$this-》numPage=1;if($this-》numPage》$this-》lastpage)$this-》numPage=$this-》lastpage;}} function show_page_result(){$row_num=(($this-》numPage)-1) * $this-》pagesize; //表示每一页从第几条数据开始显示$row_num=$row_num.“,“; $SQL=“SELECT * FROM `test` LIMIT $row_num $this-》pagesize“; $db=new database(); $query=$db-》execute($SQL); while($row=mysql_fetch_array($query)) { echo “《b》“.$row[name].“ | “.$row[sex].“《hr》“; } $db=null;}function show_page_way_1()//以“首页 上一页 下一页 尾页“形式显示{$url=$_SERVER[“REQUEST_URI“];$url=parse_url($url);//parse_url -- 解析 URL,返回其组成部分,注: 此函数对相对路径的 URL 不起作用。$url=$url[path];if($this-》nums 》 $this-》pagesize)//判断是否满足分页条件{echo “ 共 $this-》totalpages 页 当前为第《font color=red》《b》$this-》numPage《/b》《/font》页 共 $this-》nums 条 每页显示 $this-》pagesize 条“;if($this-》numPage==1){echo “ 首页 “;echo “上一页 “;}if($this-》numPage 》= 2 && $this-》numPage 《= $this-》lastpage){echo “ 《a href=$url?page=1》首页《/a》 “ ;echo “《a href=$url?page=“.($this-》numPage-1).“》上一页《/a》 “ ;}if($this-》numPage==$this-》lastpage){echo “下一页 “;echo “尾页《br》“;}if($this-》numPage 》= 1 && $this-》numPage 《 $this-》lastpage){echo “《a href=$url?page=“.($this-》numPage+1).“》下一页《/a》 “;echo “《a href=$url?page=$this-》lastpage》尾页《/a》《br》 “;}}elsereturn;}function show_page_way_2()//以数字形式显示“首页 1 2 3 4 尾页“{$url=$_SERVER[“REQUEST_URI“];$url=parse_url($url);//parse_url -- 解析 URL,返回其组成部分,注: 此函数对相对路径的 URL 不起作用。$url=$url[path];if($this-》nums 》 $this-》pagesize){if($this-》numPage==1)echo “首页“;elseecho “《a href=$url?page=1》首页《/a》“;for($i=1;$i《=$this-》totalpages;$i++){if($this-》numPage==$i){echo “ “.$i.“ “;}else{echo “ 《a href=$url?page=$i》$i《/a》 “;}}if($this-》numPage==$this-》lastpage)echo “尾页“;elseecho “《a href=$url?page=$this-》lastpage》尾页《/a》“;}}function show_page_way_3(){global $c_id;$url=$_SERVER[“REQUEST_URI“];$url=parse_url($url);//parse_url -- 解析 URL,返回其组成部分,注: 此函数对相对路径的 URL 不起作用。$url=$url[path];if($this-》nums 》 $this-》pagesize)//判断是否满足分页条件{if($c_id){echo “到第《select name=’select1’ onChange=\“location.href=’$url?c_id=$c_id&page=’+this.value+’&pagesize=$this-》pagesize’\“》“;}elseecho “到第《select name=’select1’ onChange=\“location.href=’$url?page=’+this.value+’&pagesize=$this-》pagesize’\“》“;for($i = 1;$i 《= $this-》totalpages;$i++)echo “《option value=’“ . $i . “’“ . (($this-》numPage == $i) ? ’selected’ : ’’) . “》“ . $i . “《/option》“; echo “《/select》页, 每页显示“; if($c_id) { echo “《select name=select2 onChange=\“location.href=’$url?c_id=$c_id&page=$this-》numPage&pagesize=’+this.value+’’\“》“; } elseecho “《select name=select2 onChange=\“location.href=’$url?page=$this-》numPage&pagesize=’+this.value+’’\“》“;for($i = 0;$i 《 5;$i++) // 将个数定义为五种选择{$choice= ($i+1)*4;echo “《option value=’“ . $choice . “’“ . (($this-》pagesize == $choice) ? ’selected’ : ’’) . “》“ . $choice . “《/option》“;} echo “《/select》个“;}elsereturn;//echo “没有下页了“;}}?》
php分页显示
《? $sql=“select * from table “;//查表$res=mysql_query($sql);//取得结果$nums=mysql_num_rows($res);//取得总记录数$pagesize=15;//设定每页的记录数$pages=ceil($nums/$pagesize);//取得总页数if($pages《1){$pages=1;}//设定总页数至少1页$page=$_GET[page];//取得传递过来的页数if($page》$pages){$page=$pages;}//如果传递过来的页数比总页数还大,就让它等于总页数if($page《1){$page=1;}//如果传递过来的页数小于1,就让他等于1$kaishi=($page-1)*$pagesize;//为下一步做准备,limit的初始记录$sql=“select * from table order by id desc limit $kaishi,$pagesize“;//取得记录从计算出的初始值开始,一共$pagesize条$res=mysql_query($sql);//取得结果while($arr=mysql_fetch_array($res)){echo $arr[id].“---“.$arr[biaoti].’《br》’;//输出记录的ID和标题}?》下面是分页《br /》《a href=“?page=1“》首页《/a》 《a href=“?page=《? echo $page-1;?》“》上页《/a》 当前第《? echo $page;?》页 《a href=“?page=《? echo $page+1;?》“》下页《/a》 《a href=“?page=《? echo $pages;?》“》尾页《/a》
PHP分页代码
《?phpinclude(“connection.php“);$perNumber=10; //每页显示的记录数$page=$_GET[’page’]; //获得当前的页面值$count=mysql_query(“select count(*) from user“); //获得记录总数$rs=mysql_fetch_array($count); $totalNumber=$rs;$totalPage=ceil($totalNumber/$perNumber); //计算出总页数if (!isset($page)) { $page=1;} //如果没有值,则赋值1$startCount=($page-1)*$perNumber; //分页开始,根据此方法计算出开始的记录$result=mysql_query(“select * from user limit $startCount,$perNumber“); //根据前面的计算出开始的记录和记录数while ($row=mysql_fetch_array($result)) { echo “user_id:“.$row.“《br》“; echo “username:“.$row.“《br》“; //显示数据库的内容}if ($page != 1) { //页数不等于1?》《a href=“fenye.php?page=《?php echo $page - 1;?》“》上一页《/a》 《!--显示上一页--》《?php}for ($i=1;$i《=$totalPage;$i++) { //循环显示出页面?》《a href=“fenye.php?page=《?php echo $i;?》“》《?php echo $i ;?》《/a》《?php}if ($page《$totalPage) { //如果page小于总页数,显示下一页链接?》《a href=“fenye.php?page=《?php echo $page + 1;?》“》下一页《/a》《?php} ?》================================这个是很简单的..而且也写了注释..不知道合不合你的意..
php 分页类怎么用啊
《?php class Page { private $total_rows;//数据库总条数 private $per_page_rows;//每页显示条数 private $limit; private $uri; private $total_pages;//总页数 private $config=array(“header“=》“记录条数“,“prev“=》“上一页“,“next“=》“下一页“,“first“=》“首 页“,“last“=》“尾 页“); private $list_length=8; public function __construct($total_rows,$per_page_rows=10,$url_args){ $this-》total_rows=$total_rows; $this-》per_page_rows=$per_page_rows; $this-》uri=$this-》get_uri($url_args); $this-》page = !empty($_GET[’page’]) ? $_GET[’page’] : 1; $this-》total_pages=ceil($this-》total_rows/$this-》per_page_rows); $this-》limit=$this-》set_limit(); } private function set_limit() { return “limit “.($this-》page-1)*$this-》per_page_rows.“,{$this-》per_page_rows}“; } private function get_uri($url_args) { $url=$_SERVER[“REQUEST_URI“].(strpos($_SERVER[“REQUEST_URI“],“?“) ? ““ : “?“).$url_args; $parse=parse_url($url); if (isset($parse[’query’])) { parse_str($parse[’query’],$params);//把url字符串解析为数组 unset($params[’page’]);//删除数组下标为page的值 $url=$parse[’path’].’?’.http_build_query($params);//再次构建url } return $url; } public function __get($args) { if ($args==“limit“) { return $this-》limit; }else{ return null; } } private function start_page(){ if ($this-》total_rows==0) { return 0; }else{ return (($this-》page-1)*$this-》per_page_rows)+1; } } private function end_page(){ return min($this-》page*$this-》per_page_rows,$this-》total_rows); } private function go_first() { $html=““; if ($this-》page==1) { $html.=“{$this-》config[’first’]}“; }else{ $html.=“《a href=’{$this-》uri}&page=1’》{$this-》config[’first’]}《/a》“; } return $html; } private function go_prev() { $html=““; if ($this-》page==1) { $html.=“{$this-》config[’prev’]}“; }else{ $html.=“《a href=’{$this-》uri}&page={$this-》page}-1’》{$this-》config[’prev’]}《/a》“; } return $html; } private function go_next() { $html=““; if ($this-》page==$this-》total_pages) { $html.=“{$this-》config[’next’]}“; }else{ $html.=“《a href=’{$this-》uri}&page={$this-》page}+1’》{$this-》config[’next’]}《/a》“; } return $html; } private function go_last() { $html=““; if ($this-》page==$this-》total_pages) { $html.=“{$this-》config[’last’]}“; }else{ $html.=“《a href=’{$this-》uri}&page={$this-》total_pages}’》{$this-》config[’last’]}《/a》“; } return $html; } private function go_page() { return ’《input type=“text“ onkeydown=“javascript:if(event.keyCode==13){var page=(this.value》’.$this-》total_pages.’)?’.$this-》total_pages.’:this.value;location=\’’.$this-》uri.’&page=\’+page+\’\’}“ value=“’.$this-》page.’“ style=“width:25px;“ /》《input type=“button“ onclick=“javascript:var page=(this.previousSibling.value》’.$this-》total_pages.’)?’.$this-》total_pages.’:this.previousSibling.value;location=\’’.$this-》uri.’&page=\’+page+\’\’“ value=“GO“ /》’; } private function page_list() { $link_page=““; $i_num=floor($this-》list_length/2); for ($i = $i_num; $i 》= 1; $i--) { $page=$this-》page-$i; if ($page《1) { continue; }else{ $link_page.=“《a href=’{$this-》uri}&page={$page}’》{$page}《/a》“; } } $link_page.=“{$this-》page}“; for ($i = 1; $i 《 $i_num; $i++) { $page=$this-》page+$i; if ($page《=$this-》total_pages) { $link_page.=“《a href=’{$this-》uri}&page={$page}’》{$page}《/a》“; }else{ break; } } return $link_page; } public function out_page($display=array(0,1,2,3,4,5,6,7,8)) { $display_html=’’; $html=“共有《b》{$this-》total_rows}《/b》{$this-》config[’header’]}“; $html=“每页显示《b》“.($this-》end_page()-$this-》start_page()+1).“《/b》条,本页显示从《b》{$this-》start_page()}《/b》--《b》{$this-》end_page()}《/b》{$this-》config[’header’]}“; $html=“《b》{$this-》page}《/b》/《b》{$this-》total_pages}《/b》页“; $html=$this-》go_first(); $html=$this-》go_prev(); $html=$this-》page_list(); $html=$this-》go_next(); $html=$this-》go_last(); $html=$this-》go_page(); foreach ($display as $index){ $display_html.=$html[$index]; } return $display_html; } }?》