Disini saya sudah membuat database dengan nama test yang didalamnya terdapat tabel dengan nama tb_produk dengan struktur tabelnya seperti berikut:
atau buat databasenya lalu pastekan kode berikut pada menu SQL.
--
-- Struktur dari tabel `tb_produk`
--
CREATE TABLE `tb_produk` (
`id` int(10) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`nama_produk` varchar(50) NOT NULL,
`harga` float NOT NULL,
`stok` int(11) NOT NULL
);
--
-- Dumping data untuk tabel `tb_produk`
--
INSERT INTO `tb_produk` (`nama_produk`, `harga`, `stok`) VALUES
('Sony1', 100000, 2),
('Apple1', 200000, 3),
('Samsung1', 300000, 4),
('Apple2', 400000, 5);
Setelah itu buat file PHP, disini saya beri nama index.php.
index.php
<?php
// koneksi
$conn = mysqli_connect("localhost", "root", "", "test");
if (!$conn) {
echo "Koneksi gagal " . mysqli_connect_error();
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Cari data dengan PHP</title>
</head>
<body>
<h1>Data Produk</h1>
<form method="get" action="">
<label for="cari">Cari Produk</label>
<input type="text" name="cari">
</form>
<br/>
<table border="1">
<thead>
<tr>
<td>No.</td>
<td>Nama Produk</td>
<td>Harga</td>
<td>Stok</td>
</tr>
</thead>
<tbody>
<?php
$no = 1;
// tampilkan data tb_produk
$query = mysqli_query($conn, "SELECT * FROM tb_produk");
// kondisi apabila form pencarian diisi
if (isset($_GET['cari'])) {
$query = mysqli_query($conn, "SELECT * FROM tb_produk WHERE nama_produk LIKE '%".$_GET['cari']."%'");
}
while ($dt = mysqli_fetch_assoc($query)) {
?>
<tr>
<td><?= $no++; ?></td>
<td><?= $dt['nama_produk']; ?></td>
<td><?= $dt['harga']; ?></td>
<td><?= $dt['stok']; ?></td>
</tr>
<?php
}
?>
</tbody>
</table>
</body>
</html>
Penjelasan:
// tampilkan data tb_produk
$query = mysqli_query($conn, "SELECT * FROM tb_produk");
// kondisi apabila form pencarian diisi
if (isset($_GET['cari'])) {
$query = mysqli_query($conn, "SELECT * FROM tb_produk WHERE nama_produk LIKE '%".$_GET['cari']."%'");
}
Pada kode diatas variable
$query
akan menampilkan semua data yang ada dalam tb_produk, terdapat kondisi jika $_GET['cari']
berisi nilai form pencarian maka variable $query
hanya akan menampilkan data yang mirip dengan yang dimasukan pada form pencarian.Dengan menambahkan operator
LIKE
akan memfilter data yang mirip dengan yang dikirimkan oleh form pencarian.Link video:
https://www.youtube.com/watch?v=fYW4HGwK424
0 Komentar