2016-07-14 22 views
0

你好,我試圖做一個分頁使用bootstrap即時通訊嘗試顯示所有結果mySQL數據和限制每個頁面10個數據,任何人都可以幫助我,謝謝你這是我的代碼試圖使用引導分頁與PHP mysqli

$ result = mysqli_query($ con,「SELECT * FROM backend_account WHERE archives ='0 ORDER BY account_id DESC LIMIT 10」);

回答

0

你需要php代碼嗎?

<?php 
$pre = '0'; 
$next = '10'; 
$result = mysqli_query($con,"SELECT * FROM backend_account WHERE archives = '0' ORDER BY account_id DESC LIMIT ".$pre." , ".$next.")"; 
0

您需要使用LIMIT和OFFSET來完成此操作。

鑑於你是在一個時間,你會提供抓10條記錄你的OFFSET,LIMIT這樣的:

結果

$result = mysqli_query($con,"SELECT * FROM backend_account WHERE archives = '0' ORDER BY account_id DESC LIMIT 0,10 "); 

偏移量是零的第一頁基於所以這會從一開始首先記錄並抓取10條記錄。

偏移結果

$result = mysqli_query($con,"SELECT * FROM backend_account WHERE archives = '0' ORDER BY account_id DESC LIMIT 10,10 "); 

的第二頁是10這個時間(11日記錄),並搶到10個記錄

第三頁結果

$result = mysqli_query($con,"SELECT * FROM backend_account WHERE archives = '0' ORDER BY account_id DESC LIMIT 20,10 "); 

的偏移量爲20這次(21日)記錄並抓取10條記錄。

因此,您需要將偏移量傳遞給同一頁面。當你建立你的分頁,你可以設置你的鏈接是這樣的:

<?php 
// If page is supplied set offset or default to zero for first page 
$page = ($_GET['page']) ? ($_GET['page'] * 10) - 10 : 0; 
$result = mysqli_query($con,"SELECT * FROM backend_account WHERE archives = '0' ORDER BY account_id DESC LIMIT $page,10 "); 

<ul class="pagination"> 
    <li><a href="<?= $_SERVER['PHP_SELF']?page=1 ?>">1</a></li> 
    <li><a href="<?= $_SERVER['PHP_SELF']?page=2 ?>">2</a></li> 
    <li><a href="<?= $_SERVER['PHP_SELF']?page=3 ?>">3</a></li> 
    <li><a href="<?= $_SERVER['PHP_SELF']?page=4 ?>">4</a></li> 
    <li><a href="<?= $_SERVER['PHP_SELF']?page=5 ?>">5</a></li> 
</ul> 

這是一個非常瑣碎例子來說明這是怎麼工作的。在生產中,我建議使用PHP生成分頁,並通過使用映射方法或foreach循環來創建列表項,從而提供額外的邏輯以將active類添加到li