用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”是我的文件路径。请问在“下一页”“最后一页”,“第一页”“前一页”的链接是应该怎么写?

解决方案 »

  1.   

    pathinfo()函数如果没有第二个参数的话,返回的是数组
    http://www.w3school.com.cn/php/func_filesystem_pathinfo.asp
      

  2.   

    不能那么用。pathinfo()默认返回的是一个数组。
    $PATH_INFO=pathinfo("http://localhost:250/myphp编程/留言板的分页显示/留言板分页显示.php");
    改为下面这样试试:
      $PATH_INFO=pathinfo("http://localhost:250/myphp编程/留言板的分页显示/留言板分页显示.php");
      $PATH_INFO=$PATH_INFO['dirname'].'/'.$PATH_INFO['basename'];
      

  3.   

      $PATH_INFO=pathinfo("http://localhost:250/myphp编程/留言板的分页显示/留言板分页显示.php");
      $PATH_INFO=$PATH_INFO['dirname'].'/'.$PATH_INFO['basename'];
    我改了,但是我按下一页没有实现跳转,只是地址栏变为了“http://localhost:250/myphp编程/留言板的分页显示/留言板分页显示.php?page=2”,页面内容没有改变。
    我现在不明白所谓的xxx.php?page=2能实现跳转么?如果会,是什么原因呢?
    我应该怎么写,才能实现像一般网页的按“下一页”就会实现跳转显示对应的内容呢?
      

  4.   

    $page=$_GET['page'] ? $_GET['page'] : 1;    //加上这句。