Membuat paging dengan combo box

Membuat paging dengan combo box

Sebelumnya saya menulis tentang bagaimana membuat paging sederhana dalam php dengan cara menampilkan nomor halaman sebagai pilihan halamanya. Dengan cara tersebut untuk kasus data yang sedikit tidak bemasalah karena pilihan halaman tentunya juga sedikit, akan tetapi pada kasus data yang banyak mungkin ribuan bahkan lebih akan bermasalah karena pilihan halaman akan sangat banyak. Ada beberapa alternatif agar lebih mudah, salah satunya dengan membuat pilihan halaman dalam list/menu atau yang sering disebut combo box.

Oke langsung saja, mungkin anda sudah bisa memahami ya kenapa saya membahas paging lagi tapi dengan cara berbeda. Yang belum "mudeng" coba liat gambar berikut :

Cara Paging sederhana

cara paging dasar

Script bagian navigasi halamanya sepeti berikut :

$query   = "SELECT COUNT(nim) AS numrows FROM $tablename";
$result  = mysql_query($query) or die('Error, query failed. ' . mysql_error());
$row     = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];
$maxPage  = ceil($numrows/$rowsPerPage);
$nextLink = ' ';
if($maxPage >1)
{
   $self     = $_SERVER['PHP_SELF'];
   $nextLink = array();
   for($page = 1; $page <= $maxPage; $page++)
   {
      $nextLink[] =  "<a href=\"".$baselink."?page=$page\">$page</a>";
   }
   $nextLink = "<p>Halaman : </p>" . implode(' ', $nextLink);
}
echo '<div id="navpage">'.$nextLink.'</div>';

Cara Paging dengan combo box

cara paging dengan combo box

Sedangan script untuk membuat paging combobox dengan cara :

$query   = "SELECT COUNT(nim) AS numrows FROM $tablename";
$result  = mysql_query($query) or die('Error, query failed. ' . mysql_error());
$row     = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];
$maxPage  = ceil($numrows/$rowsPerPage);
$nextLink = '&nbsp;';
if($maxPage >1)
{
    $nav .= "<form id=\"FNav\" name=\"FNav\" method=\"get\" action=\"\">";
    $nav .= "Halaman : <select name=\"page\" id=\"page\">";
    for($page = 1; $page <= $maxPage; $page++)
    {
        if($pageNum==$page)
        {
            $nav .= "<option selected>$page</option>";
        } else
        {
            $nav .= "<option>$page</option>";
        }
    }
    $nav .= "</select>";
    $nav .= "<input type=\"submit\" name=\"btn\" id=\"btn\" value=\"Go\" />";
    $nav .= "</form>";
}
echo '<p>'.$nav.'</p>';

Jika anda lihat pada kedua gambar yang berbeda adalah navigasi halaman yang ada pada bagian bawah. Gambar pertama dengan menampilkan paging halaman dalam hyperlink, sedangkan gambar kedua menampilkan paging dengan combobox/list menu.

Untuk membuat paging dengan combobox secara umum hanya mengubah bagian scriipt navigasi halamanya.

Berikut perintah lengkap membuat paging dengan combobox.

<html>
<head>
<title>Membuat paging dengan list/menu</title>
</head>
<body>
<div align="center">
<?php
mysql_connect("localhost","root","") or die("Gagal Konek ke server");
mysql_select_db("db_mhs") or die("Gagal Konek ke database");
$tablename="tb_mhs";
// jumlah data perhalaman
$rowsPerPage = 12;
//nilai pertama
$pageNum = 1;
if(!empty($_GET['page']))
{
    $pageNum = $_GET['page'];
}
$offset = ($pageNum - 1) * $rowsPerPage;
// query database
$query  = "SELECT * FROM $tablename ORDER by nim asc LIMIT $offset, $rowsPerPage";
$result = mysql_query($query) or die('Error, query failed. ' . mysql_error());
?>
  <h2 class="tengah">DATA MAHASISWA</h2>
  <table width="450" border="0" cellpadding="3" cellspacing="1" bgcolor="#999999">
    <tr bgcolor="#E8FDEC">
      <th width="149">NIS</th>
      <th width="348">NAMA</th>
    </tr>
<?php
while($row = mysql_fetch_array($result))
{
?>
    <tr bgcolor="#fff">
      <td><?php echo $row['nim']?></td>
      <td><?php echo $row['nama']?></td>
    </tr>
<?php
} //end of while
?>
  </table>
<?php
$query   = "SELECT COUNT(nim) AS numrows FROM $tablename";
$result  = mysql_query($query) or die('Error, query failed. ' . mysql_error());
$row     = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];
$maxPage  = ceil($numrows/$rowsPerPage);
$nextLink = '&nbsp;';
if($maxPage >1)
{
    $nav .= "<form id=\"FNav\" name=\"FNav\" method=\"get\" action=\"\">";
    $nav .= "Halaman : <select name=\"page\" id=\"page\">";
    for($page = 1; $page <= $maxPage; $page++)
    {
        if($pageNum==$page)
        {
            $nav .= "<option selected>$page</option>";
        } else
        {
            $nav .= "<option>$page</option>";
        }
    }
    $nav .= "</select>";
    $nav .= "<input type=\"submit\" name=\"btn\" id=\"btn\" value=\"Go\" />";
    $nav .= "</form>";
}
echo '<p>'.$nav.'</p>';
    mysql_free_result($result);
?>
</div>
</body>
</html>

Langkah-langkah membuatnya serta susunan databasenya sama dengan membuat paging sebelumnya, silahkan anda download lengkap membuat paging dengan combo berikut.

Semoga bermanfaat.

Zainal Hakim

** Bebas disunting dengan menyebutkan sumber **

Artikel Lainnya

  • Membuat file text dengan program php
    Dengan pemrograman web php kita bisa melakukan operasi terhadap file yang berada dalam server. Operasi file yang bisa dilakukan diantaranya adalah membuat file, membaca isi file serta memperbaharui isi dan menghapus file.
  • Perbedaan session dan cookies dalam php
    Dalam php kita mengenal session dan cookies yang digunakan untuk menyimpan informasi pengguna. Secara umum memang sulit dibedakan karena dari segi fungsinya bisa dikatakan sama. Artikel berikut akan membantu anda membedakanya dari berbagai sisi implementasinya.
  • Apa yang harus diketahui sebelum belajar php
    PHP merupakan pemrograman yang saat ini berkembang pesat. Banyak website dan aplikasi web baru bermunculan dijaringan internet. Inovasi-inovasi yang sangat variatif sesuai keperluan dikembangkan dengan menganut sistem terbuka (opensource) dihasilkan dari
  • Cara upload file dengan PHP Script
    Php memiliki fasilitas untuk mengirimkan file dari komputer pengguna melalui browser ke server sehingga kita tidak perlu lagi aplikasi khusus seperti ftp atau login ke panel hosting hanya untuk sekedar upload file biasa, dokumen, maupun gambar.
  • Membuat laporan dari php ke excel
    Dalam sebuah aplikasi berbasis web, biasanya kita diminta untuk menghasilkan laporan dalam berbagai format. Yang paling umum yaitu format html (langsung ditampilkan di browser), kemudian format pdf dan format excel.

Kiriman terbaru