手机
当前位置:查字典教程网 >编程开发 >php教程 >php分页示例代码
php分页示例代码
摘要:分页示例a{text-decoration:none;}a:hover{text-decoration:underline}table{fo...

<?php

/*

需求,建立一个test数据库,在里边建一个test表,里面就

只要id字段,输入一下数据就可以啦。。

由于水平有限,难免出错。。

*/

$conn=mysql_connect("localhost","root","");

$maxnum=2;//每页显示记录条数

mysql_select_db("test",$conn);

$query1="SELECTCOUNT(*)AStotalrowsFROMtest";

$result1=mysql_query($query1,$conn)ordie(mysql_error());

$row1=mysql_fetch_assoc($result1);

$totalRows1=$row1['totalrows'];//数据集数据总条数

$totalpages=ceil($totalRows1/$maxnum);//计算可分页总数,ceil()为上舍函数

if(!isset($_GET['page'])||!intval($_GET['page'])||$_GET['page']>$totalpages)$page=1;//对3种出错进行默认处理

//在url参数page不存在时,page不为10进制数时,page大于可分页数时,默认为1

else$page=$_GET['page'];

$startnum=($page-1)*$maxnum;//从数据集第$startnum条开始取,注意数据集是从0开始的

$query="SELECT*FROMtestLIMIT$startnum,$maxnum";//选择出符合要求的数据从$startnum条数据开始,选出$maxnum行

$result=mysql_query($query,$conn)ordie(mysql_error());

$row=mysql_fetch_assoc($result);

?>

<html>

<head>

<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">

<title>分页示例</title>

<scriptlanguage="JavaScript"type="text/JavaScript">

<>

</script>

<styletype="text/css">

a{text-decoration:none;}

a:hover{text-decoration:underline}

table{font-size:12px;}

.tb{background-color:#73BB95}

.tr{background-color:#FFFFFF}

</style>

</head>

<body>

<tablewidth="30%"border="0"align="center"cellpadding="0"cellspacing="1"class="tb">

<tr>

<tdheight="24"><divalign="left">分页示例</div></td>

</tr>

<?phpif($totalRows1){//记录集不为空显示

do{

?>

<trclass="tr">

<tdheight="24"><divalign="center"><?phpecho$row['id'];?></div></td>

</tr>

<?php}while($row=mysql_fetch_assoc($result));?>

</table>

<tablewidth="95%"border="0"align="center"cellpadding="0"cellspacing="0">

<tr><formname="form1">

<tdheight="27"><divalign="center">

<?php

echo"共计<fontcolor="#ff0000">$totalRows1</font>条记录";

echo"<fontcolor="#ff0000">".$page."</font>"."/".$totalpages."页";

//实现<<<12345>>>分页链接

$pre=$page-1;//上一页

$next=$page+1;//下一页

$maxpages=4;//处理分页时<<<1234>>>显示4页

$pagepre=1;//如果当前页面是4,还要显示前$pagepre页,如<<<3/4/56>>>把第3页显示出来

if($page!=1){echo"<ahref='".$_SERVER['PHP_SELF']."'><<</a>";

echo"<ahref='".$_SERVER['PHP_SELF'].'?page='.$pre."'><</a>";}

if($maxpages>=$totalpages)//如果总记录不足以显示4页

{$pgstart=1;$pgend=$totalpages;}//就不所以的页面打印处理

elseif(($page-$pagepre-1+$maxpages)>$totalpages)//就好像总页数是6,当前是5,则要把之前的34显示出来,而不仅仅是4

{$pgstart=$totalpages-$maxpages+1;$pgend=$totalpages;}

else{

$pgstart=(($page<=$pagepre)?1:($page-$pagepre));//当前页面是1时,只会是1234>>>而不会是0123>>>

$pgend=(($pgstart==1)?$maxpages:($pgstart+$maxpages-1));

}

for($pg=$pgstart;$pg<=$pgend;$pg++){//跳转菜单

if($pg==$page)echo"<ahref="".$_SERVER['PHP_SELF']."?page=$pg"><fontcolor="#ff0000">$pg</font></a>";

elseecho"<ahref="".$_SERVER['PHP_SELF']."?page=$pg">$pg</a>";

}

if($page!=$totalpages)

{echo"<ahref='".$_SERVER['PHP_SELF'].'?page='.$next."'>></a>";

echo"<ahref='".$_SERVER['PHP_SELF'].'?page='.$totalpages."'>>></a>";}

?>

<selectname="menu1"onChange="MM_jumpMenu('parent',this,0)">

<optionvalue="">选择</option>

<?phpfor($pg1=1;$pg1<=$totalpages;$pg1++){

echo"<optionvalue="".$_SERVER['PHP_SELF']."?page=$pg1">".$pg1."</option>";

}?>

</select>

</td></form>

</tr>

</table>

<?php}else{//记录集为空时显示?>

<trclass="tr">

<tdheight="24"><divalign="center">没有任何记录</div></td>

</tr>

</table>

<?php}?>

</body>

</html>

<?php

mysql_free_result($result1);

mysql_free_result($result);

?>

【php分页示例代码】相关文章:

php 批量查询搜狗sogou代码分享

分页显示Oracle数据库记录的类之一

php实现读取内存顺序号

论坛头像随机变换代码

php删除指定目录的方法

php遍历CSV类实例

php开发中的页面跳转方法总结

分页显示Oracle数据库记录的类之二

用php发送带附件的Email

php分页代码学习示例分享

精品推荐
分类导航