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

24 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

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s