Teknik paginasi dengan PHP

Maret 8, 2009 at 7:13 PM (php+mysql, tricks)

wew kk wew…

gak salah gue beli buku ini.. keren abis bro.. teknik2 php keren ada disini, salah satu tekniknya mungkin mo gue jabarin disini, itung-itung bagi ilmu.

Paging, page, halaman. Teknik membuat tampilan data menjadi halaman-halaman. Bayangkan jika tanpa  teknik ini, seandainya input yang dimasukkan ratusan bakalan pusing lihatnya. Atau kalau mau lebih jelas wordpress gue pun memakai teknik paging juga. Lihat aja, gak semua postingan gue dari pertama nulis sampai postingan terbaru ditampilkan dalam satu layar, tetapi cuma 10 postingan tiap halaman. Jika mau lihat halaman selanjutnya tinggal klik “halaman selanjutnya” di bagian bawah. Itu maksudnya paginasi.

<?php
//by. ykzir
//ini cuma bagian phpnya saja
//Kondisinya sebagai berikut:
//kita akan memanggil mysql database dengan user = root dan pass = root
//database tempat data berada bernama = kantor
//dalam database tersebut terdapat tabel = pegawai dengan field 'id' dan 'nama' 

//BAGIAN 1: PAGINASI SETTING
  $batas = 5;
  $halaman = $_GET['halaman'];
  if(empty ($halaman)){
        $posisi = 0;
        $halaman = 1;
  }else{
	$posisi = ($halaman-1)* $batas;
  }

//Menampilkan data di MySql menyesuaikan dengan posisi dan batas yang telah ditentukan
        $connect= mysql_connect("localhost, "root", "root");
	mysql_select_db("kantor",$connect);

        //query untuk "menyelect tabel pegawai"
        //dengan "urutan berdasar id secara descend(mundur)".
        //LIMIT menunjukkan posisi Select dan Batas yang berakibat
        //misalkan: batas= 5 posisi=0
        // di hal pertama : akan muncul nama pegawai dari ID 0-4
        // di hal kedua   : akan muncul nama pegawai dari ID 5-9
        // tergantung batas dan posisi pada settingan paginasi di atas
        $tampil = "SELECT * FROM pegawai ORDER BY id DESC LIMIT $posisi,$batas ";
	$result = mysql_query($tampil, "kantor") or die(mysql_error());

        //Menampilkan data ke layar sejumlah batas halaman yang telah ditentukan
	$no = $posisi+1;
	while ($data = mysql_fetch_array($result))
	{
		if(($no % 2 ) == 0)
		{
			$col1="grey";
			$col2="white";
		}
		else
		{
			$col1="white";
			$col2="black";
		}
		echo "
<table border=\"1\" align=\"center\">
<tr bgcolor=$col1>
<td>$data[id]</td>
<td>$data[nama]</td>
</tr>
</table>
";
		$nom++;
        }

//menampilkan link-link halaman data yang telah dipaginasi
	echo "
<div align=\"center\">";
		echo "Page: ";
		$tampil2 = "SELECT * FROM pegawai";
		$result2 = mysql_query($tampil2, "kantor") or die(mysql_error());
		$jmldata = mysql_num_rows($result2);
		$jmlhalaman = ceil($jmldata/$batas);

		for($i=1; $i <= $jmlhalaman;$i++)
		{
			if($i != $halaman)
 		        {
				echo "<u><a href=$_SERVER[PHP_SELF]?halaman=$i>$i</a></u> | ";
			}else{
				echo "<b>$i</b> |";
			}
		}
        echo "</div>
";

}
?>

& Komentar

  1. denumon berkata,

    nice share Bro

  2. Tugas Kapsel (Artikel 8) berkata,

    [...] Paging, page, halaman. Teknik membuat tampilan data menjadi halaman-halaman. Bayangkan jika tanpa  teknik ini, seandainya input yang dimasukkan ratusan bakalan pusing lihatnya. Atau kalau mau lebih jelas wordpress gue pun memakai teknik paging juga. Lihat aja, gak semua postingan gue dari pertama nulis sampai postingan terbaru ditampilkan dalam satu layar, tetapi cuma 10 postingan tiap halaman. Jika mau lihat halaman selanjutnya tinggal klik “halaman selanjutnya” di bagian bawah. Itu maksudnya paginasi. view source [...]

  3. riz berkata,

    thanks

Tulis sebuah Komentar