PERHATIAN...mohon maaf bila pengunjung blog ini merasa risih karena blog saya ini sekarang fokus bisnis pembuatan skripsi web.

bila ada yang perlu ditanyakan perihal web skripsi, atau aplikasi program dengan php dan mysql yang saya buat..silahkan agan hub no berikut : 0711-7871653 via sms or call me. terima kasih

untuk ebook silahkan agan donasi pulsa sebesar 10 ribu ke no : 082175745563 untuk ebook ecommerce yang saya buat.

Dengan harga yang terjangkau dikantong anak kuliahan khususnya fakultas ilmu komputer

DOA KU

berharap rizki Allah datang dengan perantara agan pengunjung blog dengan iklas, sedianya mentransfer donasi ke rek berikut : 112-00-0983851-2 bank mandiri cab kantor pajak palembang atas nama : rm. agus rais. AMIN

jenis teknik paging php

kamu sedang belajar teknik paging, dan susah banget nulis nya, dan tak mau ribet banget, neh saya kaseh semua contoh teknik paging dari yang pemula sampai master. ini teknik saya dapet dari mas lukmanul hakim dalam buku nya Membongkar Trik Rahasia Para Master PHP dari loko media.

dan saya meletakkan kode ini agar saya sendiri tidak lupa dan bisa di pakai lagi kalau diperlukan. kalau mau donwload nanti baca aja dulu.

berikut kode untuk sql nya :

nama database nya : pintar

CREATE TABLE `anggota` (
`id_ang` int(3) NOT NULL auto_increment,
`nama` varchar(50) collate latin1_general_ci NOT NULL,
`alamat` varchar(100) collate latin1_general_ci NOT NULL,
PRIMARY KEY (`id_ang`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=40 ;

--
-- Dumping data for table `anggota`
--

INSERT INTO `anggota` (`id_ang`, `nama`, `alamat`) VALUES
(1, 'Lukmanul Hakim', 'Yogyakarta'),
(2, 'Siti Mutmainah', 'Belitung'),
(3, 'Beauty Khuluqiyah', 'Banjarmasin'),
(4, 'Gelora Mahardika', 'Jakarta'),
(5, 'Clara Erika', 'Magelang'),
(6, 'Gita Indah Purnama', 'Surabaya'),
(7, 'Aji Pratama Putra', 'Surakarta'),
(8, 'Ririn Restu Amalia', 'Makasar'),
(9, 'Bangkit Prasetya Adi', 'Balikpapan'),
(10, 'Ikrima Mailani', 'Bandung'),
(11, 'Frita Faramita', 'Semarang'),
(12, 'Syalasiria Djuria', 'Medan'),
(13, 'Kanzul Firdaus', 'Manado'),
(14, 'Ririn Dwi Ariyanti', 'Lampung'),
(15, 'Mayadah Samarawati', 'Bali'),
(16, 'Ririn Nurul Hidayati', 'Palembang'),
(17, 'Brama Surya Kumbara', 'Malang'),
(18, 'Uspal Jandevi', 'Pekan Baru'),
(19, 'Ririn Elok Puspasari', 'Jepara'),
(20, 'Yunia Ervina', 'Bogor'),
(21, 'Hunter Pandega', 'Klaten'),
(22, 'Adamono Awamiti', 'Boyolali'),
(23, 'Muren Herdigenarosa', 'Palu'),
(24, 'Ririn Yusma Adelia', 'Tangerang'),
(25, 'Purnama Sahara', 'Cirebon'),
(26, 'Bryan Hartomo', 'Cilacap'),
(27, 'Ririn Fawzia Agustina', 'Padang'),
(28, 'Lubsir Munir', 'Pontianak'),
(29, 'Ariandra Satria', 'Temanggung'),
(30, 'Ruhul Ulya', 'Bekasi'),
(31, 'Lusiana Rustandika', 'Sleman'),
(32, 'Qori Adzani', 'Depok'),
(33, 'Azwin Yuda Himawan', 'Bima'),
(34, 'Septiana Prihastantri', 'Bangka'),
(35, 'Dwi Kusuma Wardhana', 'Sragen');

TEKNIK 1 paging dengan tabel

<table>
<tr><th>No</th><th>Nama</th><th>Alamat</th></tr>
<?php
mysql_connect("localhost","root","root");
mysql_select_db("pintar");

//Langkah 1: Tentukan batas,cek halaman & posisi data
$batas = 5;
$halaman = $_GET['halaman'];
if(empty($halaman)){
$posisi=0;
$halaman=1;
}
else{
$posisi = ($halaman-1) * $batas;
}

//Langkah 2: Sesuaikan perintah SQL
$tampil="select * from anggota limit $posisi,$batas";
$hasil=mysql_query($tampil);

$no=$posisi+1; // Agar angka (penomoran) mengikuti paging
while ($data=mysql_fetch_array($hasil)){
echo "<tr><td>$no</td><td>$data[nama]</td><td>$data[alamat]</td></tr>";
$no++;
}
echo "</table>";

//Langkah 3: Hitung total data dan halaman serta link 1,2,3 ...
echo "<br>Halaman : ";
$file="paging_1.php";

$tampil2="select * from anggota";
$hasil2=mysql_query($tampil2);
$jmldata=mysql_num_rows($hasil2);
$jmlhalaman=ceil($jmldata/$batas);

for($i=1;$i<=$jmlhalaman;$i++)
if ($i != $halaman)
{
echo " <a href=$_SERVER[PHP_SELF]?halaman=$i>$i</A> | ";
}
else
{
echo " <b>$i</b> | ";
}
echo "<p>Total anggota : <b>$jmldata</b> orang</p>";
?>

TEKNIK 2 dengan pencarian form :

<form method=get action=paging_2.php>
Isikan Nama : <input type=text name="nama">
<input type=submit name=oke value=Cari>
</form>

<?php
mysql_connect("localhost","root","root");
mysql_select_db("pintar");

$oke=$_GET['oke'];
if ($oke=='Cari'){

$batas=5;
$halaman=$_GET['halaman'];

if(empty($halaman)){
$posisi=0;
$halaman=1;
}
else{
$posisi = ($halaman-1) * $batas;
}

$nama=$_GET['nama'];

$tampil="select * from anggota where nama like '%$nama%' limit $posisi,$batas";
$hasil=mysql_query($tampil);
$jumlah=mysql_num_rows($hasil);

if ($jumlah > 0){
echo "<table>
<tr><th>No</th><th>Nama</th><th>Alamat</th></tr>";
$no=$posisi+1;
while ($data=mysql_fetch_array($hasil)){
echo "<tr><td>$no</td><td>$data[nama]</td><td>$data[alamat]</td></tr>";
$no++;
}
echo "</table>";

echo "<br>Halaman : ";

$file="paging_2.php";

$tampil2="select * from anggota where nama like '%$nama%'";
$hasil2=mysql_query($tampil2);
$jmldata=mysql_num_rows($hasil2);

$jmlhalaman=ceil($jmldata/$batas);

for($i=1;$i<=$jmlhalaman;$i++)
if ($i != $halaman)
{
echo " <a href=$file?halaman=$i&nama=$nama&oke=$oke>$i</A> | ";
}
else
{
echo " <b>$i</b> | ";
}
echo "<p>Ditemukan <b>$jmldata</b> orang yang bernama <b>$nama</b></p>";

}
else{
echo "Tidak ditemukan data yang bernama <b>$nama</b>";
}
}
?>

TEKNIK 3 dengan tombol next dan previous

<table><tr><th>No</th><th>Nama</th><th>Alamat</th></tr>
<?php
mysql_connect("localhost","root","root");
mysql_select_db("pintar");

//Langkah 1: Tentukan batas,cek halaman & posisi data
$batas=5;
$halaman=$_GET['halaman'];
if(empty($halaman)){
$posisi=0;
$halaman=1;
}
else{
$posisi = ($halaman-1) * $batas;
}

//Langkah 2: Sesuaikan perintah SQL
$tampil="select * from anggota limit $posisi,$batas";
$hasil=mysql_query($tampil);

$no=$posisi+1;
while ($data=mysql_fetch_array($hasil)){
echo "<tr><td>$no</td><td>$data[nama]</td><td>$data[alamat]</td></tr>";
$no++;
}
echo "</table><br>";

//Langkah 3: Hitung total data dan halaman
$tampil2="select * from anggota";
$hasil2=mysql_query($tampil2);
$jmldata=mysql_num_rows($hasil2);

$jmlhalaman=ceil($jmldata/$batas);

// Link ke halaman sebelumnya (previous)
if($halaman > 1){
$previous=$halaman-1;
echo "<A HREF=$file?halaman=1><< First</A> |
<A HREF=$file?halaman=$previous>< Previous</A> | ";
}
else
{
echo "<< First | < Previous | ";
}

// Tampilkan link halaman 1,2,3 ...
$file="paging_3.php";
for($i=1;$i<=$jmlhalaman;$i++)
if ($i != $halaman){
echo " <a href=$file?halaman=$i>$i</A> | ";
}
else{
echo " <b>$i</b> | ";
}

// Link kehalaman berikutnya (Next)
if($halaman < $jmlhalaman){
$next=$halaman+1;
echo "<A HREF=$file?halaman=$next>Next ></A> |
<A HREF=$file?halaman=$jmlhalaman>Last >></A> ";
}
else{
echo "Next > | Last >>";
}
echo "<p>Total anggota : <b>$jmldata</b> orang</p>";
?>

TEKNIK 4 paging dengan teknik combo bok

<?php
mysql_connect("localhost","root","root");
mysql_select_db("pintar");

$batasan=5; // nilai awal utk kelipatan 5
$file="paging_4.php";
$angka=$_GET['angka'];
$batas=$_GET[batas]; // limit yang dinamis
$halaman=$_GET['halaman'];
if(empty($halaman)){
$posisi=0;
$halaman=1;
}
else{
$posisi = ($halaman-1) * $batas;
}

echo "<form method=get action='$file'>
<input type=hidden name=halaman value=$halaman>
Tentukan Tampilan Data Per Halaman:
<select name=batas onChange='this.form.submit()'>";
for ($i=1;$i<=10;$i++){
$angka=$batasan*$i;
if ($batas==$angka)
echo "<option value=$angka selected>$angka</option>";
else
echo "<option value=$angka>$angka</option>";
}
echo "</select></form>";

// Langkah 1
if(empty($batas)){
$batas=$batasan;
}
else{
$batas=$batas;
}

// Langkah 2: Sesuaikan perintah SQL
$tampil="select * from anggota limit $posisi,$batas";
$hasil=mysql_query($tampil);
echo "<table>
<tr><th>No</th><th>Nama</th><th>Alamat</th></tr>";

$no=$posisi+1;
while ($data=mysql_fetch_array($hasil)){
echo "<tr><td>$no</td><td>$data[nama]</td><td>$data[alamat]</td></tr>";
$no++;
}
echo "</table>";

// Langkah 3: Hitung total data dan halaman serta link 1,2,3 ...
echo "<br>Halaman : ";

$tampil2="select * from anggota";
$hasil2=mysql_query($tampil2);
$jmldata=mysql_num_rows($hasil2);
$jmlhalaman=ceil($jmldata/$batas);

for($i=1;$i<=$jmlhalaman;$i++)
if ($i != $halaman){
echo " <a href=$file?halaman=$i&batas=$batas>$i</A> | ";
}
else{
echo " <b>$i</b> | ";
}
echo "<p>Total anggota : <b>$jmldata</b> orang</p>";
?>

TEKNIK 5 menggunakan batas dengan combo bok

<?php
mysql_connect("localhost","root","root");
mysql_select_db("pintar");

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

// Langkah 2: Sesuaikan perintah SQL
$tampil="select * from anggota limit $posisi,$batas";
$hasil=mysql_query($tampil);
echo "<table>
<tr><th>No</th><th>Nama</th><th>Alamat</th></tr>";

$no=$posisi+1;
while ($data=mysql_fetch_array($hasil)){
echo "<tr><td>$no</td><td>$data[nama]</td><td>$data[alamat]</td></tr>";
$no++;
}
echo "</table>";

// Langkah 3
$tampil2="select * from anggota";
$hasil2=mysql_query($tampil2);
$jmldata=mysql_num_rows($hasil2);
$jmlhalaman=ceil($jmldata/$batas);

$file="paging_5.php";
echo "<form method=get action='$file'>
Halaman: <select name=halaman onChange='this.form.submit()'>";
for ($i=1;$i<=$jmlhalaman;$i++){
$awal = (($i*$batas)-$batas+1);
$akhir = $batas*$i;
if ($i==$halaman)
echo "<option value=$i selected>$awal s/d $akhir</option>";
else
echo "<option value=$i> $awal s/d $akhir <br></option>";
}
echo "</select></form>";

echo "<p>Total anggota : <b>$jmldata</b> orang</p>";
?>

semoga sangat bermanfaat kalau tidak mengerti kalian beli aja buku nya (bukan promosi).

kalau tidak mau ribet neh download gan

6 Response to "jenis teknik paging php"

krist mengatakan...

Oke trima kasih dah download dan skript nya jalan mulus dikompiku

Amir mengatakan...

makasih Gan artikelnya bagus, mau tanya disini agan menjelaskan paging dengan query 1 tabel. nah saya kesulitan untuk melakukan paging dengan query 2 tabel.

misalkan querynya begini >>

"SELECT anggota.id_jabatan, anggota.nama_anggota, jabatan.id_jabatan, jabatan.gaji, jabatan.keterangan FROM anggota, jabatan WHERE anggota.id_jabatan = jabatan.id_jabatan"

EnD.com mengatakan...

mantap mas...
saya belajar banyak...:)

ini saya sedang belajar..

Unknown mengatakan...

nice coding gan :)

Anonim mengatakan...

ma'kasih brow tutornya . . . . .

Unknown mengatakan...

nice gan artikelnya
nie juga ada teknik paging yang simple
http://sks122.blogspot.co.id/2015/10/tiga-langkah-mudah-menerapkan-paging.html

powered by Blogger | WordPress by Newwpthemes | Converted by BloggerTheme