如何获取表的最后一个ID

时间:2016-02-17 23:24:58

标签: php pdo

我正在实现一个代码,该代码获取当前产品组合的当前ID,并使用上一个和下一个按钮来浏览下一个和上一个图像。 ID类似于1,3,5,7等,不是连续的。我想知道当我到达表格中的las ID时如何禁用“下一个”链接。

<?php

foreach($connection->query('SELECT * FROM table WHERE id = (select min(id) from table where id > '.$myid.')') as $row) {

}
foreach($connection->query('SELECT * FROM table WHERE id = (select max(id) from table where id < '.$myid.')') as $row1) {

}

        echo "<a class='anterior' href='http://miweb.com/proyecto/id/".$row1['id']."'>Previous</a>";

?>
<a class="siguiente" href="http://miweb.com/proyecto/id/<?php echo $row['id']; ?>">Next</a>

1 个答案:

答案 0 :(得分:0)

这种做法看起来非常原始。您可以使用LIMIT进行分页良好练习。例如,对于MySQL:

$currentPage = 10;
$pageSize = 100;

// Display current page data
$sql = "SELECT * FROM `table` LIMIT :offset :pagesize";
$stmt = $connection->prepare($sql);
$stmt->execute([
    ':offset' => $pageSize * $currentPage,
    ':pagesize' => $pageSize,
]);
$data = $stmt->fetchAll();
print_r($data);

// Display Next button
$sql = "SELECT count(*) FROM `table`";
$stmt = $connection->prepare($sql);
$stmt->execute();
$count = $stmt->fetchColumn();
if ($pageSize * ($currentPage + 1) < $count) {
    echo '<a href="...' . ($currentPage + 1) . '...">Next</a>';
}