Tips PHP : Cara Membuat Nomor Halaman Web Tanpa Database
Sebagai pengguna teknologi Internet terutama website tentunya kita seringkali melihat tampilan seperti dibawah ini :
Tampilan di atas biasa disebut dengan Halaman Bertingkat. Apakah paging itu? Paging merupakan teknik menampilkan data dengan cara membaginya ke beberapa halaman. Teknik ini diberikan untuk mengurangi scrolling window apabila data yang disajikan terlalu banyak, sehingga akan menimbulkan kejemuan orang yang melihat dan juga akan menghasilkan page load time yang besar karena ukuran filenya besar (apabila data disajikan dalam satu halaman saja).
Untuk keperluan navigasi data biasanya disajikan dengan link berupa nomor halaman atau kadang berbentuk Previous dan Next.
Pada kasus ini akan dipaparkan bagaimana membuat paging ini dilakukan.
1 2 3 4 5 ... 20 Next >>
Contoh tampilan di atas maksudnya terdapat 20 halaman paging dan halaman yang sedang aktif adalah halaman 1. Bila yang aktif halaman 10, maka tampilan navigasinya adalah:
<< Prev 1 … 7 8 9 10 11 12 13 ... 20 Next >>
Sedangkan bila yang aktif adalah halaman terakhir (20) maka tampilan navigasinya adalah
<< Prev 1 .. 17 18 19 20
Dalam contoh ini kasus paging ini akan diterapkan pada data guestbook atau buku tamu. Atau sering kita jumpai pada Search Engine seperti Google, Yahoo, dan sebagainya.
Berikut adalah script PHP Paging tanpa Database.
Langkah 1
Simpanlah dengan nama paging.php.
Langkah 2
Ketik script berikut ini:
<? function makeLink($str,$url,$bold="false"){
if($bold){
$str="<b>".$str."</b>";
}
return '<a href="'.$url.'">'.$str.'</a>';
}
function paging($curRec,$totalRec,$maxRec){
$totalPage=ceil($totalRec/$maxRec);
$curPage=ceil(($curRec+1)/$maxRec);
$str="";
/* tombol previous */
if($curPage>1){
$rec=($curPage-2)*$maxRec;
$str.=" ".makeLink("prev","?cur=".$rec,$bold)." ";
}
/* nomor halaman 1 2 3 dst… */
for($i=1;$i<=$totalPage;$i++){
if($i==$curPage){
$bold=true;
}else{
$bold=false;
}
$rec=($i-1)*$maxRec;
$str.=" ".makeLink($i,"?cur=".$rec,$bold)." ";
}
/* tombol next */
if($curPage<$totalPage){
$rec=($curPage*$maxRec);
$str.=" ".makeLink("next","?cur=".$rec,$bold)." ";
}
return $str;
}
$totalRec=60;// total Record ini didapat berdasrkan table dalam database
$maxRec=4;// ini adalah maximum record per halaman
/*
curRecord akan digunakan di sql query menggunakan LIMIT
contoh : $rs=mysql_query(“select * from phonebook limit $curRec,$maxRec”;
*/
$curRec=($_GET['cur']==null)?"0":$_GET['cur'];
?><?=paging($curRec,$totalRec,$maxRec)?><?
?>
Langkah 3
Simpan di dalam C:\AppServ\www atau sesuai dengan tempat yang anda buat, yang paling penting, file ini berada di dalam C:\Apache\htdocs\...
Langkah 4
Silahkan cek tampilan di dalam localhost seperti tampilan di bawah ini.
Jika anda mengalami kesulitan dalam pembuatannya ,, silahkan tinggalkan komentar anda dibawah ini, saya siap memberikan bantuan kepada saudara sekalian. Terimakasih.
Selamat mencoba.
No comments:
Post a Comment