1

有人能帮助我吗?我相信这对你们来说很容易。我正在努力寻找在没有页面显示我的代码时如何隐藏下一个链接的解决方案,如下所示:

if (!isset($_GET['page']) or !is_numeric($_GET['page'])) {
    $page = 0;
} else {
    $page = (int)$_GET['page'];
}
$pages_query=mysql_query ("SELECT COUNT * FROM hardware");
$result = mysql_query("SELECT * FROM hardware LIMIT $page, 3");
echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($page+3).'">Next</a><p>';
$prev = $page - 3;

//only print a "Previous" link if a "Next" was clicked
if ($prev >= 0) {
    echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.$prev.'">Previous</a>';

}
4

3 回答 3

2

您可以使用mysql_num_rows($result)获取硬件中的记录数:

$result = mysql_query("SELECT * FROM hardware LIMIT $page, 3");
$record_count =  mysql_num_rows($result);
if ($record_count > 1)
    echo 'Next';
于 2013-05-04T16:27:37.647 回答
0

在您的 if 语句中检查 $page 是否大于 0,然后根据 $page 的值的结果编写您的代码。您可以在第一个 if 语句中使用另一个 if 语句,并使其检测情况并决定做什么。另一件事是,如果用户单击下一步,则用户位于第二页,因此如果 $prev 高于 1,您的上一个应该会出现

于 2013-05-04T16:26:13.923 回答
0

类似于:

$itemsPerPage = 3;
$sql = "SELECT * FROM hardware";
$result = mysql_query($sql);
$count = mysql_num_rows($result);
$pageCount = $count/$itemsPerPage;
if($pageCount > $page) { //Are there more pages worth of items stored, than we're currently looking at?
echo 'next';
}

您希望在 SQL 语法中使用 OFFSET 以及 LIMIT。

LIMIT 限制返回的行数。OFFSET 告诉它在结果集中开始一些行。

您需要限制页面上所需的项目数量。并由该数字*页偏移。

希望这会有所帮助。

于 2013-05-04T16:26:41.883 回答