Teknik Paging halaman PHP

hasil Tampilan Paging menggunakan PHP

Paging adalah teknik saat menampilkan data kedalam halaman halaman yang berbeda. Teknik ini digunakan jika data yang ada sangat banyak sehingga tidak mungkin tampil dalam satu halaman. Alasan yang lain, dengan paging, loading halaman lebih cepat karena php hanya meminta sebagian data saja. Contoh paging yang anda pakai tiap hari(namun jarang diperhatikan) adalah hasil pencarian Google.

Untuk memberikan gambaran yang lebih real tentang paging, kita akan membahas teknik paging dengan cara yang mudah dan sederhana. Dalam tutorial kali ini, saya akan menampilkan data negara didunia. Data SQL saya ambil dari http://27.org/isocountrylist/.

Langkah utama membuat paging halaman di PHP adalah sebagai berikut:
1. Membuat script koneksi
2. Menentukan total data yang akan ditampilkan pada tiap halaman dan menentukan posisi halaman
3. Membuat skrip SQL sesuai dengan posisi halaman yang diminta dan menampilkannya
4. Menampilkan nomor paging di bagian bawah tabel.

1. Membuat script Koneksi

<?php
	
	define('db_host','localhost');
	define('db_user','root'); //usename mysql
	define('db_pass',''); //password mysql jika ada
       //nama database dinama tabel country berada
	define('db_name','candralabdb');

	mysql_connect(db_host,db_user,db_pass);
	mysql_select_db(db_name);
	
?>

2. Menentukan total data yang akan ditampilkan pada tiap halaman dan menentukan posisi halaman
Script selanjutnya dari langkah 2 sampai langkah empat ada disatu file dengan nama country.php


//2). Menentukan total data yang akan 
//=== ditampilkan pada tiap halaman dan menentukan posisi halaman

//variabel dan kode awal untuk menentukan posisi halaman saat ini
//dipakai untuk melimit quiery
	$batas=10; //satu halaman menampilkan 10 baris
$halaman=$_GET['halaman'];
$posisi=null;
if(empty($halaman)){
	$posisi=0;
	$halaman=1;
}else{
	$posisi=($halaman-1)* $batas;
}

//3). melakukan query dan menampilkan data
//query data menggunakan limit $posisi dan batas
$query="select * from country limit $posisi,$batas ";

$result=mysql_query($query) or die(mysql_error());
$no=1;

while($rows=mysql_fetch_object($result)){
?>

			<tr>
				<td><?php echo $posisi+$no
				?></td>
				<td><?php	echo $rows -> iso;?></td>
				<td><?php	echo $rows -> name;?></td>
				<td><?php	echo $rows -> printable_name;?></td>
			</tr>
			<?php		$no++;
			}?>
		</table>
		<br>
		<?php		
		
// 4). code untuk Menampilkan nomor paging di bagian bawah tabel.
			$sql_paging = mysql_query("select iso  from country");
			$jmldata = mysql_num_rows($sql_paging);
			$jumlah_halaman = ceil($jmldata / $batas);

			echo "Halaman :";
			for($i = 1; $i <= $jumlah_halaman; $i++)
				if($i != $halaman) {
					echo "<a href=country.php?halaman=$i>$i</a>|";
				} else {
					echo "<b>$i</b>|";
				}
			mysql_close();?>
		<br>
		Jumlah data :<?php echo $jmldata;?>

Hasil dari program diatas akan tampak seperti gambar dibawah ini

hasil Tampilan Paging menggunakan PHP

Jika anda tertarik mencoba, lihat demonya disini atau silahkan download kodenya disini

Author: Candra Adi Putra

Candra Adi Putra adalah Alumni STMIK AKAKOM Yogyakarta. Like Candralab Studio Di Facebook.

22 thoughts on “Teknik Paging halaman PHP”

  1. Om, mau tanya cara membatasi nomor yang dibawah bagaimana?
    contohnya ane mau buat seperti ini :
    [1][2][3][4][5]…[10.][101][101][102]

  2. gan,

    masih ada error ini :
    Notice: Undefined index: halaman in C:\xampp\htdocs\pagingphpmysql\country.php on line 16

    mohon pencerahannya

Tinggalin komentar dong!