2013-05-28 120 views
0

我正在製作一個表格,其中有來自MySQL的表格的30個條目。我在發送到sql的代碼中使用了LIMIT 30,但也有一些下一頁。該表將具有姓氏,名字和ID。在頁面的底部,有一個下一頁按鈕。它鏈接到同一頁面,但發送一個get變量中的最後一個id。在準備語句中使用row_number

<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(),但我不知道這是我在找什麼。感謝所有:)

回答

0

要獲得第二頁,使用the two-number form of 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

0

而不是每次都傳遞最後的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>