php本身是没有分页概念的,分页是URL传参,然后通过mysql查询语句到数据库获取数据,然后实现的分页,url上的参数,通过PHP的$_GET都是可以获取到的。
成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的吉首网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
现在市面上的PHP框架基本都有PHP分页类,参照文档直接调用就好了,如果想看实现过程,可以去下载一个TP框架,然后打开里面的分页类查看里面的源代码。
script type="text/javascript"if(window.location.toString().indexOf('pref=padindex') != -1){}else{if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){if(window.location.href.indexOf("?mobile")0){try{if(/Android|Windows Phone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="{dede:global.cfg_mobileurl/}/list.php?tid={dede:field.id/}";}else if(/iPad/i.test(navigator.userAgent)){}else{}}catch(e){}}}}/script
!--[if IE 6]
script type="text/javascript" src="/skin/js/png.js"/script
scriptDD_belatedPNG.fix('div,img,span,li,a,a:hover,dd,p,input,select')/script
![endif]--
script type="text/javascript"
$(function(){
//一次纵向滚动一个
$('#marquee2').kxbdSuperMarquee({
distance:30,
time:3,
btnGo:{up:'#goU',down:'#goD'},
direction:'up'
});
});
/script
script type="text/javascript"
window.onload = function(){
imgZoomRun("product3","p","prod-zoom","li"); // 图片放大
imgZoomRun("product7","p","prod-zoom","li");
imgZoomRun("product8","p","prod-zoom","li");
newsFontMove("fontjump"); // 鼠标放上,字体上下挪
newsFontMove("fontjumpcolor"); // 鼠标放上,字体上下挪
colorChange("fontjumpcolor"); // 隔行换色
colorChange("news5"); // 隔行换色
listImgZoom("product3","205"); // 图片缩放,需要给定宽度
enterAnimation("news_fadein");
if(typeof(data) != "undefined"){
var lefttype = new LeftType(data,"left-type",0); // 多级分类
}
afx.conHeightAuto();
};
window.addEventListener("resize",function(){
afx.conHeightAuto();
},false);
/script
link rel="stylesheet" type="text/css" href="/skin/css/child_page.css" /
script type="text/javascript" src=""/script
/head
body
?php include_once("baidu_js_push.php") ?
!-- 头部 --
{dede:include filename="head.htm"/}
!-- 头部 end --
div class="main_c"
div class="main" id="content"
!-- 左侧部分 --
{dede:include filename="left.htm"/}
!-- 左侧部分 end--
!-- 内容部分 --
div class="sp_content" id="contentRight"
div class="content_com_title"
h2{dede:field name='typename'/}/h2
div class="bread" 当前位置:搜索 strong class="fc_03c"{dede:global name='keyword' function='RemoveXSS(@me)'/}/strong 的结果 /div
/div
div class="content"
ul class="news1 news3 news_indent" id=""
{dede:list pagesize ='15'}
li a href="[field:arcurl/]" title="[field:title/]" class="pg-color"[field:title/]/a span[field:pubdate function="MyDate('Y-m-d',@me)"/]/span /li
{/dede:list}
/ul
div class="pagexx"
ul
{dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="5"/}
/ul
/div
/div
/div
!-- 内容部分 end--
这是我网站,你看看能用吗?
?php
include("connection.php");
$perNumber=10; //每页显示的记录数
$page=$_GET['page']; //获得当前的页面值
$count=mysql_query("select count(*) from user"); //获得记录总数
$rs=mysql_fetch_array($count);
$totalNumber=$rs[0];
$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[0]."br";
echo "username:".$row[1]."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代码如下:
/*
Author:默默
Date :2006-12-03
*/
$page=isset($_GET['page'])?intval($_GET['page']):1; //这句就是获取page=18中的page的值,假如不存在page,那么页数就是1。
$num=10; //每页显示10条数据
$db=mysql_connect("host","name","pass"); //创建数据库连接
$select=mysql_select_db("db",$db); //选择要操作的数据库
/*
首先咱们要获取数据库中到底有多少数据,才能判断具体要分多少页,具体的公式就是
总数据数除以每页显示的条数,有余进一。
也就是说10/3=3.3333=4 有余数就要进一。
*/
$total=mysql_num_rows(mysql_query("select id from table")); //查询数据的总数,id是数据库中的一个自动赋值的字段
$pagenum=ceil($total/$num); //获得总页数
//假如传入的页数参数大于总页数,则显示错误信息
If($page$pagenum || $page == 0){
Echo "Error : Can Not Found The page .";
Exit;
}
$offset=($page-1)*$num; //获取limit的第一个参数的值,假如第一页则为(1-1)*10=0,第二页为(2-1)*10=10。
$info=mysql_query("select name from table limit $offset,$num"); //获取相应页数所需要显示的数据,name是数据里的一个字段
While($it=mysql_fetch_array($info)){
Echo $it['name']."
";
} //显示数据
For($i=1;$i=$pagenum;$i++){
$show=($i!=$page)?"$i":"$i";
Echo $show." ";
}
/*显示分页信息,假如是当页则显示粗体的数字,其余的页数则为超连接,假如当前为第三页则显示如下
1 2 3 4 5 6
*/
?