大家好,我一直在自学分页,尽管我有一个关于使用链接查看下一组结果的一般性问题。
我可以使用下面的代码在表格中显示数据。使用我的第二个代码示例,我可以获得显示的链接,例如 1,2,3,4 Next。并且数字会根据应显示的记录数而变化。尽管当我按下链接查看下一页结果时,我的问题就出现了。页面重新加载,但显示相同的结果集。任何帮助或帮助将不胜感激。
下面的代码用于对记录进行计数,并为任何时候在屏幕上显示的记录数量设置一个变量。
<?
$per_page = 4;
$start = 0;
$result = mysql_query("select * from blogentry WHERE approve = 'Y' order by timeleft ASC");
//count records
$record_count = mysql_num_rows($result);
//count max pages
$max_pages = $record_count / $per_page; //may come out as decimal
if (!$start)
$start = 0;
$get = mysql_query("select * from blogentry WHERE approve = 'Y' order by timeleft ASC LIMIT $start, $per_page");
while ($row = mysql_fetch_assoc($get))
{
$usn1 = $row['username'];
$tml1 = $row['timeleft'];
$bge1 = $row['blogentry'];
$irm1 = $row['ResponceMess'];
echo "<table>"
Table code intentionally left out
echo "</table>"
下面的代码用于显示分页,尽管按下链接时会显示相同的结果:
//setup prev and next variables
$prev = $start - $per_page;
$next = $start + $per_page;
if(!($start<=0))
echo "<a href'messages.php?start=$prev'>Prev</a>";
//set variable for first page
$i=1;
//show page numbers
for ($x = 0; $x < $record_count; $x = $x + $per_page)
{
if ($start != $x)
echo " <a href='messages.php?start=$x'>$i</a> ";
else
echo " <a href='messages.php?start=$x'><b>$i</b></a> ";
$i++;
}
//show next button
if (!($start >= $record_count - $per_page))
echo " <a href='messages.php?start=$next'>Next</a>";
?>