今天在BT5中一不小心发现了自己实习时,看PHP写的一个php分页代码。没啥看点,看了跟网上他们写的也没啥不同。
贴出来也给跟我一样的菜鸟瞅瞅吧。我这php算是速成产品,当时写个这分页,也出现不少问题。不过问题出现的多,才能学到东西,哈哈·····喜欢问题···
我的数据库就两个字段一个id,一个doc,id还是自增字段。
<html> <head> <title> ShowData </title> </head> <body> <h2>ShowData</h2> <?php //连接数据库 $page = 1; $db = mysql_connect('127.0.0.1','root','toor'); mysql_select_db('test',$db); $pagesize = 3; //每页显示到数量 //计算一共有多少记录,用于计算页数 $rs = mysql_query("select count(*) from info",$db); $row = @mysql_fetch_array($rs); $numrows = $row[0]; //计算页数 $pages = intval($numrows / $pagesize); if ($numrows % $pagesize) { $pages++; } //设置页数 if (isset($_GET['page'])) { $page = intval($_GET['page']); } else { $page = 1; //其他情况,都指向第一页 } //计算记录的偏移量 $offset = $pagesize * ($page - 1); //读取指定记录 $rs = mysql_query("select * from info order by id limit $offset,$pagesize",$db); //把数据用表格显示出来 if ($row = @mysql_fetch_array($rs)) { $i = 0; ?> <table border='0' width='80%'> <tr> <td width='50%'> <p align='center'>ID</td> <td width='50%'> <p align='center'>DOC</td> </tr> <?php do{ $i++; ?> <tr align='center'> <td width='50%'><?=$row['id']?></td> <td width='50%'><?=$row['doc']?></td> </tr> <?php } //循环显示数据 while ($row = mysql_fetch_array($rs)); echo "</table>"; } echo "<div align='center'> 共".$pages."页(".$page."/".$pages.")"; for ($i = 1;$i < $page;$i++) { echo "<a href='showdata.php?page=".$i."'>[".$i."]</a>"; } echo "[".$page."]"; for ($i = $page + 1;$i <= $pages;$i++) { echo "<a href='showdata.php?page=".$i."'>[".$i."]</a>"; } echo "</div>"; ?> </body> </html>