About DwThai.Com 00

DwThai.Com Logo

DwThai.Com

Tip and Trick Dreamweaver

ก่อตั้งเมื่อปีพุทธศักราช ๒๕๔๖





ค้นหาข้อมูลใน DwThai.Com

%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80%E0%B8%82%E0%B8%B5%E0%B8%A2%E0%B8%99%E0%B9%82%E0%B8%9B%E0%B8%A3%E0%B9%81%E0%B8%81%E0%B8%A3%E0%B8%A1%E0%B9%80%E0%B8%9E%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%95%E0%B8%B1%E0%B8%94%E0%B8%AB%E0%B8%99%E0%B9%89%E0%B8%B2%E0%B8%82%E0%B9%89%E0%B8%AD%E0%B8%A1%E0%B8%B9%E0%B8%A5%E0%B9%81%E0%B8%AA%E0%B8%94%E0%B8%87%E0%B8%9C%E0%B8%A5 %28Pagination%29 [Article ID : 205]


เรื่อง : เขียนโปรแกรมเพื่อการตัดหน้าข้อมูลแสดงผล (Pagination) ด้วยภาษา PHP

การแบ่งหน้าแสดงผลข้อมูลดูรู้สึกว่า..จะเป็นปัญหาสำหรับผู้ที่เขียน Web Application มือใหม่ทั้งหลาย เนื่องจากว่า.. ต้องอาศัยแนวคิด และการคำนวณตัวเลขอยู่พอสมควรเลยทีเดียว ผมเองในการเริ่มฝึกเขียนใหม่ ๆ ก็งมโข่งอยู่หลายวันเหมือนกันกับเรื่องตรงนี้ ในบทความนี้จึงนำเอามาให้ท่านลองศึกษากันดูครับ

Code ตัวอย่าง (PHP Pagination Code)

โค้ดตัวอย่างด้านล่างนี้ อยากให้ผู้ที่สนใจทำความเข้าใจไปทีละ Comment ที่ได้อธิบายกำกับไปในโค้ดนั้น

<?php
$link=new MySQLi("localhost","username","password",'DBName');
$link->set_charset("UTF8");

$sql="Select count(*) allRec From tbName"; //นับจำนวน Record ทั้งหมดใน Table
$rs=$link->query($sql);
$total_rec=$rs->fetch_assoc(); // เก็บจำนวน Record ทั้งหมดไว้ใน $total_page
$p_size=25; //กำหนดจำนวน Record ที่จะแสดงผลต่อ 1 เพจ
$total_page=ceil($total_rec['allRec']/$p_size); //ทำการหารหาจำนวนหน้าทั้งหมดของข้อมูล

//การคำนวณหา Record แรกที่จะแสดงในหน้าแสดงผล ซึ่งจะเก็บลงใน $start
if(empty($_GET['page'])){
/*
ถ้ายังไม่มีการส่งค่ามาเพื่อทำการเลือกดูหน้าข้อมูลใด ๆ ให้กำหนดหน้าแรกของข้อมูลเป็นค่า Default และให้ Record แรกเริ่มที่ Record ที่ 0 หรือ Record แรก
*/ 
   $page=1;
   $start=0;
}else{
/*
หากมีการส่งค่ามาเพื่อเลือกดูหน้าข้อมูลหน้าใดให้ทำการคำนวณ โดยใช้ 
จำนวนข้อมูลที่ต้องการแสดงต่อ 1 เพจ คูณกับ หน้าข้อมูลที่ต้องการเลือกมาแสดง ลบด้วย 1
*/ 
   $page=$_GET['page'];
   $start=$p_size*($page-1);
}

$sql="Select * From tbName LIMIT $start , $p_size";
//ใช้ Option LIMIT ของ MySQL เพื่อทำการเลือกข้อมูลออกมาตามต้องการ
$rs=$link->query($sql);

while($result=$rs->fetch_array()){ //วนรอบแสดงข้อมูล
   echo $result["name"],'<br>';
}
for($i=1;$i<=$total_page;$i++){ //สร้าง Link เพื่อให้ผู้ใช้งานเลือกชมหน้าข้อมูล
   echo '<a href="',$_SERVER['PHP_SELF'],'?page=',$i,'">หน้าที่ ',$i,'</a> ';
}

$rs->free_result();
$link->close();
?>
*ตัวอย่างการแสดงผลจากโค้ดข้างต้น
About the Author
Mr.Sittichai Raksasuk

Mr.Sittichai Raksasuk

Sittichai is a Web Developer and Web Technology Instructor for over 10 yrs. He is also a webmaster of dwthai.com and author jQuery with Dreamweaver (2010). DwThai.Com is a website for web developer using Adobe Dreamweaver.

Contact with him : dwthai@gmail.com



บทความอื่นที่คุณอาจสนใจ

การเขียนโปรแกรมติดต่อกับ Database (MySQL)

เรื่อง : การเขียนโปรแกรมภาษา PHP ติดต่อกับ Database *การเขียนโปรแกรมเพื่อติดต่อฐานข้อมูล MySQL มีหลายวิธี ในที่นี้แนะนำให้ใช้ MySQLi ใน...  

การติดตั้ง XAMPP เพื่อใช้พัฒนาเว็บด้วยภาษา PHP

เรื่อง : วิธีการติดตั้งโปรแกรม XAMPP สำหรับพัฒนาโปรแกรมบนเว็บกับภาษา PHP ...  

โปรแกรม Counter นับผู้ชมเข้าเว็บไซต์ด้วยภาษา PHP

เรื่อง : การเขียนโปรแกรม Counter แบบง่ายด้วย PHP Counter คือ โปรแกรมเล็ก ๆ ที่ใช้ในการนับจำนวน Page View ห...  

การตรวจสอบเลือก/ไม่เลือก (validate) อินพุทข้อมูลในแบบ Radio Button

เรื่อง: วิธีการตรวจสอบ Radio Button ผู้ใช้มีการเลือกแล้วหรือไม่ ? Input ในรูปแบบตัวเลือกลักษณะ Radio...  


Copyright ©2003-2019 dwthai.com. All rights reserved.
This website was created by : S.raksasuk.

ติดต่อ DwThai.Com

e-mail : dwthai@gmail.com
mobile: 08-9495-7296

เขียน Guestbook : DwThai.Com

*
*
*