0

我正在从 MySQL 的表中创建一个包含 30 个条目的表。我LIMIT 30在发送到 sql 的代码中使用,但还有一堆下一页。该表将具有姓氏、名字和 ID。在页面底部,有一个下一页按钮。它链接到同一页面,但在 get 变量中发送最后一个 id。

<a href=<?php echo "students_view.php?id=$lastvari"; ?>><button type="button">Next Page</button></a>

$lastvari 是最后一个 id。从 mysql 调用数据时,我使用的是准备语句:

$stmt = $con->prepare("SELECT Last_Name, First_Name, Student_ID FROM Students LIMIT 30");
$stmt->execute();
$stmt->bind_result($last_name, $first_name, $student_id);

我将如何告诉 MySQL 在发送给它的 ID 之后启动?我研究 row_number() 但我不确定这是否是我正在寻找的。谢谢大家:)

4

2 回答 2

0

要获取第二页,请使用双数形式LIMIT

SELECT Last_Name, First_Name, Student_ID FROM Students LIMIT 30,30

获取第三页:

SELECT Last_Name, First_Name, Student_ID FROM Students LIMIT 60,30

等等。第一页将是LIMIT 0,30.

于 2013-05-28T17:36:18.717 回答
0

而不是每次都将 Last id 传递到下一页,我会建议一个替代方案。
假设当前网址是 www.yoursite/students_view.php?page=0

<?php
$start = $_GET['page'] * 30;
$stmt = $con->prepare("SELECT Last_Name, First_Name, Student_ID FROM Students LIMIT $start, 30");
$stmt->execute();
$stmt->bind_result($last_name, $first_name, $student_id);
?>

<?php
$page = $_GET['page']; //don't forget to sanitize
$page = $page+1;
?>
<a href="<?php echo "students_view.php?page=$page"; ?>" >
   <button type="button">Next Page</button>
</a>
于 2013-05-28T17:49:12.943 回答