Pagination Sederhana dengan PHP dan MySQL


Pagination

Sebelum membuat tutorial ini, saya sebelumnya mencari-cari tutorial bagaimana cara membuat pagination, Banyak sekali para blogger membagi ilmunya, tapi saya malah jadi bingung. Kemudian saya mencoba membuat sebuat pagination dengan PHP dan MySQL dengan versi saya sendiri. Sebelumnya juga saya pernah bagi script mengenai pagination dengan PHP dan MySQL, namun itu bukan buatan saya sendiri

Baiklah, langsung saja ke tutorialnya :

1. Copy script di bawah ini :

<?php
//koneksi database
mysql_connect("localhost", "root", "");
mysql_select_db("pagination");//fungsi pagination
$BatasAwal = 3;
if (!empty($_GET['page'])) {
$hal = $_GET['page'] - 1;
$MulaiAwal = $BatasAwal * $hal;
} else if (!empty($_GET['page']) and $_GET['page'] == 1) {
$MulaiAwal = 0;
} else if (empty($_GET['page'])) {
$MulaiAwal = 0;
}//tampil data
$query = mysql_query("SELECT * FROM artikel LIMIT $MulaiAwal , $BatasAwal");
while ($record = mysql_fetch_array($query)) {
echo '
<div style="width:400px;margin:auto;border:1px solid">
<table>
<tr>
<td>Judul</td>
<td>:</td>
<td>' . $record['judul'] . '</td>
</tr>
<tr>
<td>Isi</td>
<td>:</td>
<td>' . $record['isi'] . '</td>
</tr>
</table>
</div>
';
}//navigasi
$cekQuery = mysql_query("SELECT * FROM artikel");
$jumlahData = mysql_num_rows($cekQuery);
if ($jumlahData > $BatasAwal) {
echo '<br/><center><div style="font-size:10pt;">Page : ';
$a = explode(".", $jumlahData / $BatasAwal);
$b = $a[0];
$c = $b + 1;
for ($i = 1; $i <= $c; $i++) {
echo '<a style="text-decoration:none;';
if ($_GET['page'] == $i) {
echo 'color:red';
}
echo '" href="?page=' . $i . '">' . $i . '</a>, ';
}
echo '</div></center>';
}
?>

2. Sesuaikan settingan koneksi databasenya (host,username dan password)

3. Sesuaikan jumlah baris yang muncul dalam satu halaman ($BatasAwal = 3;)

4. Buat Database dengan nama “pagination”

5. Masukkan perintah SQL berikut :

CREATE TABLE IF NOT EXISTS `artikel` (
`id` int(2) NOT NULL AUTO_INCREMENT,
`judul` varchar(50) NOT NULL,
`isi` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=12 ;

INSERT INTO `artikel` (`id`, `judul`, `isi`) VALUES
(1, 'judul 1', 'adsadsa'),
(2, 'judul 2', 'dasdsadsa'),
(3, 'judul 3', 'dsadsadsadsadasd'),
(4, 'judul 4', 'asdasdasdasdasdsa'),
(5, 'judul 5', 'asdsadasd'),
(6, 'judul 6', 'herupurwito.com'),
(7, 'judul 7', 'qweqweqweqweqwe'),
(8, 'judul 8', 'qweqweqweqwe'),
(9, 'judul 9', 'wqeqweqwe'),
(10, 'judul 10', 'qweqwewqe'),
(11, 'judul 11', 'akjsdsadsad');

6. Lihat hasilnya

pagination

Untuk download scriptnya, ada di sini => downloaddropbox github

29 thoughts on “Pagination Sederhana dengan PHP dan MySQL

  1. trimakasih tutorialnya sangan membantu 🙂 😀

  2. Mantap, ini yang ingin saya pelajari, terima kasih banyak. 🙂

  3. mas heru, minta tolong ni… di paginationnya keluar error kyk gini Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in…. kira2 knapa ya? maaf sy baru belajar.. 😀

  4. Ok… sudah terpecahkan… 🙂

  5. mantap tutorialnya …… .terima kasih …… nanti saya akan edit lagi yah …..

  6. matursuwun banget Bro..
    skrip Anda mantap…
    thank’ you very much
    😀

  7. ane udah tiga hari surfing di google.. cuma ini yg berhasil saya gunakan paling mudah dimengerti..

    thanks mas..

  8. Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\GISTA\datapt.php on line 28 ….

    Souece Code saya :

     
    [] DATA PERGURUAN TINGGI
     

     
     
     

     

    <?php
    mysql_connect("localhost","root","");
    mysql_select_db("db_gista");
    $BatasAwal = 10;
    if (!empty($_GET['page'])) {
    $hal = $_GET['page'] – 1;
    $MulaiAwal = $BatasAwal * $hal;
    } else if (!empty($_GET['page']) and $_GET['page'] == 1) {
    $MulaiAwal = 0;
    } else if (empty($_GET['page'])) {
    $MulaiAwal = 0;
    }//tampil data
    $query = mysql_query("SELECT id, nama_pt FROM pt ORDER BY id LIMIT $MulaiAwal , $BatasAwal");
    while ($record = mysql_fetch_array($query)) {
    echo '

    NO
    :
    ‘ . $record[‘id’] . ‘

    PERGURUAN TINGGI
    :
    ‘ . $record[‘nama_pt’] . ‘

    ‘;
    }//navigasi
    $cekQuery = mysql_query(“SELECT * FROM pt”);
    $jumlahData = mysql_num_rows($cekQuery);
    if ($jumlahData > $BatasAwal) {
    echo ‘Page : ‘;
    $a = explode(“.”, $jumlahData / $BatasAwal);
    $b = $a[0];
    $c = $b + 1;
    for ($i = 1; $i <= $c; $i++) {
    echo '‘ . $i . ‘, ‘;
    }
    echo ”;
    }
    ?>

     

     
     
     

  9. terimakasih mas, sudah saya coba dan berhasil;
    sangat bermanfaat sekali mas 🙂

  10. Masukkan nya Ke Tabel kita gimana gan ?

  11. makasih banyak om….
    tapi yang dimaksud page dalam php apa ya om masih kurang ngerti ni maklum newbie hehe

  12. makasih banget gan, bermanfaat banget buat project saya.. thanks banget

  13. mas, saya belum coba ubah apa2 code mas. tp koq masih error pada fetch arraynya ya

    Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in

    sya jalankan querynya bisa nampilin data ga ada salah. kenapa ya mas ?

  14. kl ada eror “undefined index: page” itu solusinya gimana ya mas heru?

  15. terima kasih postingannya sangat bermanfaat

  16. thanks gan tutorial ny, sangat membantu

Leave a reply to herupurwito Cancel reply