Php分页 - 如何在以下页面中继续编号

时间:2013-01-27 23:53:40

标签: php paging

在我的分页代码中,我每页列出5个建筑物,并从1到5编号,

<?php
$page = intval($_GET['page']);
if(!$page) $page = 1;
$totalno=mysql_num_rows(mysql_query("SELECT M1_ID FROM M1Buildings WHERE M1_Cat2 BETWEEN 3 AND 4 && M1_Status=5"));
$limit = 5;
$show = $page * $limit - $limit;
$buildinglist = mysql_query("SELECT * FROM M1Buildings  WHERE M1_Cat2 BETWEEN 3 AND 4 && M1_Status=5 ORDER BY M1_Height DESC LIMIT $show,$limit",$con);
$firstrowno=1;//This will be 1 for page 1, 6 for page 2, 11 for page 3 etc..
?>

这里有一些HTML代码,然后:

<?php
$startno=1;//This is the number of each row, starting from 1
while ($rowblist = mysql_fetch_array ($buildinglist))
{
echo '<tr>
        <td>'.$startno.'</td>
<td>Some information here</td>
<td>Some information here</td>
    </tr>';
    $startno++;
    $firstrowno+5;
}
?>

第一页没有问题,但是当我转到第2页时,它再次从1开始,但我希望它从6开始,我无法得到如何实现它。我已经进行了搜索,但没有结果。实际上,我的英语有限,我想不知道如何用正确的词语搜索它。谢谢你的理解!

1 个答案:

答案 0 :(得分:1)

您需要更新查询以使用偏移量。 (**对不起,没注意到你用的是速记**)

花了一点时间让我得到问题的要点。 使用:     $ startno = $ show + 1;

代替:     $ firstrowno = 1;

HTML之后:

<?php
while ($rowblist = mysql_fetch_array ($buildinglist))
{
echo '<tr>
        <td>'.$startno.'</td>
<td>Some information here</td>
<td>Some information here</td>
    </tr>';
    $startno++;
}
?>

变量在到服务器之间不保持状态。 (除非你存储它们并从会话中检索它们。