PHP+MySQL数据分页

<?php
if($_GET["page"]){
	$page=$_GET["page"];#获取要显示的页码
}else{
	$page=1;#没有参数传入时,显示第一页
}
$col=13;#每页显示记录条数
$p=($page-1)*$col;
mysql_connect("127.0.0.1:3306","root","");
mysql_query("set names gbk");
mysql_select_db("php");#数据库中需要事先建product表并插入数据,含有name和price字段。
$result=mysql_query("select * from product limit ".$p.",".$col."");
echo "
<table BORDER=1>
<tr>
<th>name</th>
<th>price</th>
</tr>
";
while($rs=mysql_fetch_object($result))
{
echo "<tr>
<td>".$rs->name."</td>
<td>".$rs->price."</td>
</tr>
";
}
echo "</table>";
$count=mysql_query("select name from product");#取得记录总条数
$num = mysql_num_rows($count)/$col;#计算页数
$num=ceil($num);#无条件小数进位确定总页数
mysql_close();
if($page==1){
	echo '上一页';
}else{
	echo "<a href=?page=".($page-1).">上一页</a>";
}
echo " 第".$page."页 ";
if($page==$num){
	echo '下一页<br>';
}else{
	echo "<a href='?page=".($page+1)."'>下一页</a><br>";
}

if($page==1){
}else{
	echo "<a href='?page=1'>第一页</a><<<";
}

for($i=-2;$i<=2;$i++){
	if(($page+$i)>$num||($page+$i)<1){

	}else{
		echo " <a href=?page=".($page+$i).">".($page+$i)."</a> ";
	}
}
if($page==$num){
}else{
	echo ">>><a href='?page=".$num."'>最后一页</a><br>";
}
?>
<form action="" method='get'>
跳转到<input type='text' name='page'>页
<input type='submit' value="确定">
</form>

原文:http://www.oschina.net/code/snippet_104588_2169

你可以 评论, 或者在你的网站上进行 trackback引用

分享到

回复

Twitter Delicious Facebook Digg Stumbleupon Favorites 更多
如非标明[原创]的内容均来自互联网,如有侵权请来信告知以便删除。