【发布时间】:2013-08-08 19:50:02
【问题描述】:
我为我的网站制作了这个脚本。
一切正常,但有一个小问题。
你可以无限前进
您可以在无限循环中单击下一页
由于某种原因,当我回显 $num_pages 时,我得到 1 0_0
我怎样才能解决“infinie nexting”——我对这个问题的奇怪定义:)
<?php
$per_page = 4;
$start = 1;
if(!isset($_GET['page'])) {
$page = 1;
} else {
$page = $_GET['page'];
}
if($page <= 1) {
$start = 1;
$page = 1;
} else {
$start = $page * $per_page - $per_page;
}
$next = $page+1;
$previous = $page-1;
$GetAllComments = $con->query("SELECT * FROM comments LIMIT $start, $per_page");
$num_rows = $GetAllComments->num_rows;
$num_pages = $num_rows / $per_page;
while($GAC = $GetAllComments->fetch_object()) {
echo "<div class='well'> <h3>". $GAC->Title. "</h3>
". $GAC->Content. " <hr /> <em> Posted By ". $GAC->PosterName ." </em>
</div>";
}
$pagen = $page+1;
$pagep = $page-1;
echo "
<div class='pagination'>
<ul>
";
if($page > 1) {
echo "
<li><a href='?page=$previous'>".$pagep."</a> </li>
";
}
echo "
<li class='disabled'><a href='#'>$page</a></li>
";
echo "
<li> <a href='?page=$next'>" . $pagen . "</a></li>
</ul>
</div>
";
【问题讨论】:
-
为 $page 变量的值设置一个上限(就像您在此处添加了一个下限 if($page
-
我试过 if($page >= $num_pages) { $start = 1; $page = 1;) 但不起作用
-
当我这样做时 if($page >= $num_pages) { $start = 1; $page = 1;} 它只进入第二页然后不允许进入下一个