การแสดงข้อมูลแบบแบ่งนี้เรียกว่า Pagination นอกจากนั้นยังสามารถแสดงหมายเลขเพื่อให้ผู้ใช้เลือกกดเพื่อเปิดลำดับหน้าที่ต้องการได้
ในการสร้างตารางในรูปแบบนี้ เราจำเป็นต้องมีไฟล์ "Pagination.class.php"
สำหรับวิธีการทำนั้น เราต้องนำเข้าไฟล์"Pagination.class.php" ก่อน สามารถดูตัวอย่างโค้ดได้ดังนี้
โค้ด: เลือกทั้งหมด
<?php
include 'Pagination.class.php';
$page = 1;
if (isset($_GET['page'])) {
$page = $_GET['page'];
}
$row = 10;
$totaldata_query="SELECT * FROM your_table";
$resultdata=mysqli_query($conn,$totaldata_query)or die("Query failed");
$total_data= mysqli_num_rows($resultdata);
$total_page = ceil($total_data/$row);
if ($page>=$total_page) {
$page=$total_page;
}
if($page<=0){
$page=1;
}
$start = ($page - 1) * $row;
$Pagination = new Pagination($page, $total_data);
$Pagination->parse();
?>
- $page = หน้าปัจจุบัน
- $total_data = จำนวนข้อมูลทั้งหมด
- $total_page = จำนวนหน้าทั้งหมดเมื่อเอาข้อมูลทั้งหมดมาหารแล้ว
- $start = จุดเริ่มต้นข้อมูล
โค้ด: เลือกทั้งหมด
<table class="table" style="width:100%">
<thead>
<!-- ส่วนของ thead -->
</thead>
<tbody>
<?php
$sql = "SELECT * FROM your_table ORDER BY id DESC LIMIT $start,$row";
$result=mysqli_query($conn,$sql)or die("Query failed");
if(mysqli_num_rows($result)>0){
while($datarow=mysqli_fetch_assoc($result)){
echo '<tr>';
//echo table data
echo '</tr>';
}
}
?>
</tbody>
</table>
โค้ด: เลือกทั้งหมด
<div class="row">
<div class="col-md-12">
<div class="text-center">
<nav aria-label="Page navigation">
<?php
echo $Pagination->parse();
?>
</nav>
</div>
</div>
</div>
<p class="text-center">ทั้งหมด <?php echo $total_data;?> รายการ</p>
ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : PHP Programming
-ศึกษาความรู้เกี่ยวกับ PHP
-ถามตอบเกี่ยวกับ PHP
-บทเรียน php พื้นฐาน
-บทเรียน PHP OOP
-บทเรียน HTML