天天看点

PHP 列表页 显示方法 修正版

数据库名称:persons

数据库表名:cs

数据库表字段:id FirstName

数据库IP:localhost(本地)

数据库用户名:root

数据库密码:(空)

__________________________________________________________________

<!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>Untitled Document</title>

</head>

<body>

<style type="text/css">

*{

margin:0;

padding:0;

}

#lay{

margin:100px 100px 100px 100px;

}

a{

padding:5px;

font-size:13px;

text-decoration:none;

}

span{

font-size:13px;

}

table{

border:1px solid red;

border-collapse:collapse;

}

</style>

[align=center" cellpadding="0" cellpadding="0]

<tr align="center" bgcolor="#ffcc">

<td width="200px;">id</td>

<td width="200px;">值</td>

</tr>

<?php

$link = mysql_connect("localhost","root",""); //连接数据库

mysql_select_db("cs");//选择哪个数据库

mysql_query("set names utf-8"); //设置数据库字符编码为中文

$sql = mysql_query("select *from persons");

$pagesize = 5; //显示条数

$sum = mysql_num_rows($sql); //判断 一共有多少条数据

$count = ceil($sum/$pagesize);//求出一共有多少页

$pages = $count; //显示最后一页

$init = 1;

$page_len = 7;

$max_p = $count;

if(empty($_GET["page"])|| $_GET["page"]<0){

$page = 1;

}else{

$page = $_GET["page"];

}

$off = ($page-1)*$pagesize; //求出数据库查询的第一个数据

$he = mysql_query("select * from persons limit $off,$pagesize");//按照off开始,到pagesize规律显示

echo "一共 ".$sum." 条数据";

while($row = mysql_fetch_array($he)){

echo "<tr align='center'>";

echo "<td>".$row['id']."</td>";

echo "<td>".$row['FirstName']."</td>";

echo " </tr> ";

}

?>

<?php

$page_len = ($page_len%2)?$page_len:$page_len+1;//如果余为1则为真,为0则为假

$pageoffset = ($page_len-1)/2;//页码偏移量

$key ="";

if($page!=1){

$key.="<span><a href=\"".$_SERVER['PHP_SELF']."?page=1"."\">第一页 </a></span>";

$key.="<span><a href=\"".$_SERVER['PHP_SELF']."?page=".($page-1)."\">上一页 </a></span>";

}else{

$key.="<span>第一页 </span>";

$key.="<span>上一页 </span>";

}

if($pages>$page_len){

if($page<=$pageoffset){

$init=1;

$max_p = $page_len;

}else{

if($page+$pageoffset>=$pages+1){

$init = $pages - $page_len+1;

}else{

$init = $page-$pageoffset;

$max_p = $page + $pageoffset;

}

}

}

for($i=$init;$i<=$max_p;$i++){

if($i==$page){

$key.="[ ".$i." ]";

}else{

$key.="<a href=\"".$_SERVER['PHP_SELF']."?page=".$i."\">$i</a>";

}

}

if($i-1!=$page){

$key.="<span><a href=\"".$_SERVER['PHP_SELF']."?page=".($page+1)."\">下一页</a></span>";

$key.="<span><a href=\"".$_SERVER['PHP_SELF']."?page=".$pages."\">最后一页</a></span>";

}else{

$key.="<span>下一页</span>";

$key.="<span>最后一页</span>";

}

echo "<tr align='center'>";

echo "<td colspan='2'>".$key."</td>";

echo "</tr>";

?>

</table>

</table>

[/align]

</body>

</html>

__________________________________________________________________

如有问题请留言