Cara Menampilkan Data Berdasarkan Kategori di PHP

Disebuah database data disimpan secara terpisah-pisah dalam tabel tertentu. Sebagai contoh tabel barang hanya menyimpan data barang, tabel transaksi hanya menyimpan data transaksi.

Saat ingin menampilkan barang berdasarkan kategori maka diperlukan tabel yang menyimpan kategori barang. Seperti barang yang dijual di sebuah toko pakaian / butik ada kategori baju, kategori celana dll.

Jika ingin menampilka data barang berdasarkan kategori, misalnya barang dengan jenis baju saja maka tabel barang harus di relasikan terlebih dahulu dengan tabel kategori.

Cara Menampilkan Data Berdasarkan Kategori dengan php mysql yaitu dengan membuat dua buah tabel yang berasi di sebuah database. Pada contoh ini kita akan merelasikan tabel barang dan kategori. Silahkann ikut langkah dibawah ini

Step by step Cara Menampilkan Data Berdasarkan Kategori PHP MySQL

1. Buatlah database di phpmyadmin (nama database boleh apapun, disini digunakan indonetsource).

2. Buat tabel barang pada database

CREATE TABLE `barang` (
 `id_barang` int(11) NOT NULL,
 `nama` varchar(50) NOT NULL,
 `harga` int(11) NOT NULL,
 `deskripsi` varchar(150) NOT NULL,
 `kategori` int(11) NOT NULL,
 PRIMARY KEY (`id_barang`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1

3. Setelah memiliki tabel barang buatlah tabel kategori

CREATE TABLE `kategori` (
 `id_kategori` int(11) NOT NULL AUTO_INCREMENT,
 `nama_kategori` varchar(50) NOT NULL,
 PRIMARY KEY (`id_kategori`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1

4. Beri index untuk kolom kategori di tabel barang.

Kolom kategori yang ada di tabel barang perlu diberi index untuk kebutuhan membuat relasi. Sebelumnya pada tutorial Cara membuat index di MySQL kita telah menyelesaikan salah satu contoh pembuatan index.

Silahkan baca kembali tutorial tersebut dan buat index untuk kategori seperti gambar di bawah ini

Membuat index kategori di mysql
index kategori pada tabel barang

5. Buat Relasi Barang dan kategori

Kolom kategori yang telah diberi index akan menjadi foreign key pada tabel barang. Silahkan buat relasi pada menu Designer dan tarik garis create relationship untuk merelasikan tabel barang dan tabel kategori.

Relasi barang dan kategori

6. Masukkan data ke tabel kategori

Menampilkan Data Berdasarkan Kategori
Kategori dari barang

7. Masukkan data ke tabel barang

Jika relasi pada langkah 5 sudah berhasil dibuat maka saat menginputkan data ke tabel barang akan muncul data dari tabel kategori.

Menampilkan Data Berdasarkan Kategori Barang
Input tabel barang dan menampilkan kategori

Script Menampilkan data dari database menggunakan php.

menampilkan_bykategori.php

<!DOCTYPE html>
<html>

<head>
    <title>Menampilkan Data Dari Database PHP </title>
    <style>
        table,
        tr,
        td {
            border: 1px solid black;
        }

        thead {
            background-color: #cccddd;
        }
    </style>
</head>

<body>
    <h2>Menampilkan Data Dari Database PHP</h2>
    <table>
        <thead>
            <tr>
                <td>Id Barang</td>
                <td>Nama</td>
                <td>Harga</td>
                <td>Kategori</td>                
            </tr>
        </thead>
        <?php
        include "koneksi.php";
        $no = 1;
        $query = mysqli_query($kon, 'SELECT * FROM barang LEFT JOIN kategori ON barang.kategori=kategori.id_kategori');
        while ($data = mysqli_fetch_array($query)) {
        ?>


            <tr>
                <td><?php echo $no++ ?></td>                
                <td><?php echo $data['nama'] ?></td>
                <td><?php echo $data['harga'] ?></td>
                <td><?php echo $data['nama_kategori'] ?></td>

            </tr>
        <?php } ?>
    </table>
</body>

</html>

8. Jalankan program dengan mengakes link

http://localhost/indonetsource/php/menampilkan_bykategori.php

Jika mucul permasalahan kemungkinan belum memiliki script koneksi. Jika belum memiliki script koneksi silahkan tambahakan terlebih dahulu seperti yang telah dibuat pada tutorial cara menampilkan data dari database dengan php.

1 thought on “Cara Menampilkan Data Berdasarkan Kategori di PHP”

Leave a comment