Wednesday, November 7, 2012

Paggination

Okay sekarang saya akan membahas request-an dari bang ari  , mengenai paggination. nah mungkin kasusnya jika data ribuan mungkin tidak enak dilihat , karena data akan terus kebawah , fungsi dari paggination inilah untuk membatasi jumlah data yang akan dimunculkan. Langsung aje ke kasus nya :)

pertama buat dahulu database yang akan kita gunakan untuk login , buat saja dengan nama latihan .

syntax sql
create database latihan;

jika sudah membuat database buat lah tabel , beri nama tabel dengan akun .

syntax sql
use latihan;

create table akun (username varchar(20) primary key,password varchar(20));

jika sudah selesai , masukan data untuk account yang akan digunakan untuk login nanti

syntax sql
INSERT INTO `latihan`.`akun` (`username`, `password`) VALUES ('deden', 'deden'), ('uden', 'uden');

Selesai membuat database , sekarang buat koneksinya terlebih dahulu

 koneksi.php
 

<?php
mysql_connect('localhost','root','')or die("koneksi gagal");
mysql_select_db('latihan')or die("Database belum ada");
?>


yah selesai membuat koneksi nya , lanjut buat file yang akan digunakan sebagai view data .

data.php

<?php
include "koneksi.php";

//Mendeteksi bahwa ada atau tidak kah $_GET['hal'] pada address bar,jika tidak ada maka nilai 1
if(!isset($_GET['hal'])){
    $hal   =   1;
}else{
    $hal   =   $_GET['hal'];
}

//Batas jumlah data yang akan di tampilkan tiap halaman
$batas  =1;

//Awal jumlah data di tampilkan, misalkan jika dari no 2 maka data akan dimunculkan dari no urut dua
$dari=(($hal*$batas)-$batas);

//query untuk memunculkan data pada table akun
$sql        =    "select * from akun limit $dari,$batas";

$query    =    mysql_query($sql);

while($data=mysql_fetch_array($query)){
echo "Username : $data[0]<br>";  
}


     $sql                =     "select * from akun";
     $query            =     mysql_query($sql);
     //menghitung jumlah data yang terdapat pada table akun
    $row            =   mysql_num_rows($query);
    //membulatkan nilai dari jumlah data
    $jumlah         =   ceil($row/$batas);
      
     $previous       =   $hal-1;
    $next           =   $hal+1;

     //jika halaman berada pada halaman yang lebih dari 1 maka tampilan previous akan muncul
 

    if($hal>1){
        echo "<a href=data.php?hal=".$previous."><= Previous</a>";
    }
   
        if($jumlah>1){
                for($i=1;$i<=$jumlah;$i++){
                        echo "<a href=data.php?hal=$i>$i</a>";               
                    }
                }        
        
    if($jumlah > $hal){ 
                 
        echo "<a href=data.php?hal=".$next.">Next =></a>";
    }

?>


itu halaman pertama , disitu terdapat link next, itu ada karena data melebihi jumlah limit yang ditentukan . Ketika anda klik next maka tampilan akan berubah menjadi seperti berikut




Sekian saja bahasan mengenai paggination , selamat mencoba dan semoga bermanfaat :) 

No comments:

Post a Comment