日期:2014-05-17  浏览次数:20597 次

php和mysql关于分页的问题
用php提取mysql中的信息,把他分页显示
代码:
<table width="90%" border="0" align="center">


<?php 
$mylink=mysql_connect("localhost","root","998121021");
mysql_select_db("liuyan",$mylink);
$sql="select * from data order by time";
$result=mysql_query($sql);

$message_count=mysql_num_rows($result);
echo $message_count;
$i=$message_count-1;
$page_size=2;
$page_count=ceil($message_count/$page_size);
echo $page_count;
if($page<1) $page=1;
if($page>$page_count) $page=$page_count;
$offset=($page-1)*$page_size;
$sql1="select * from data order by time limit $offset,$page_size";
$result1=mysql_query($sql1);


while($myarray=mysql_fetch_array($result1)){
extract($myarray);
echo '<tr>';
echo '<td>'.($message_count-$i)."楼".'</td>';
echo '<td>'."用户名:".$name.'</td>';
echo '<td>'.'<a href=mailto:'.$email.'/>'.$email.'</td>';
echo '</tr>';
echo '<tr>';
echo '<td>'.$time.'</td>';
echo '</tr>';
echo '<td>'.$words.'</td>';
echo '</tr>';
echo '<tr>';
echo '<td colspan="2">'.'<hr color="black" width="100%">'.'</td>';
echo '</tr>';
$i--;
}



?>

</table>
<center>
<?php 
$pre_page=$page-1;
$next_page=$page+1;
echo $page;
$PATH_INFO=pathinfo("http://localhost:250/myphp编程/留言板的分页显示/留言板分页显示.php");
if($page==1)
{
echo "第一页&nbsp;&nbsp;上一页"."&nbsp;&nbsp;";
}
else 
{
echo "<a href='$PATH_INFO?page=1'>第一页</a>";
echo "&nbsp;";
echo "<a href='$PATH_INFO?page=$page_count'>上一页</a>";
}
echo "&nbsp;";
if($page==$page_count)
{
echo "下一页&nbsp;&nbsp;最后一页&nbsp;&nbsp";
}
else 
{
echo "<a href='$PATH_INFO?page=$next_page'>下一页</a>";
echo "&nbsp;";
echo "<a href='$PATH_INFO?page=$page_count'>最后一页</a>";
echo $page_count;
}

?>
</center>
代码的分页显示部分是错误的,书上的path_info()函数用错了,我也不知道怎么用,“http://localhost:250/myphp编程/留言板的分页显示/留言板分页显示.php”是我的文件路径。请问在“下一页”“最后一页”,“第一页”“前一页”的链接是应该怎么写?

------解决方案--------------------
$page=$_GET['page'] ? $_GET['page'] : 1; //加上这句。