PHP MySQL Ajax Search: Pencarian Data Real-Time

Pernahkah Anda mengetik di kotak pencarian dan hasilnya langsung muncul tanpa halaman berkedip? Itulah Ajax search PHP — pencarian data secara real-time tanpa memuat ulang halaman. Fitur ini memberikan pengalaman yang cepat dan modern bagi pengguna.

Bagaimana Cara Kerjanya?

Konsepnya sederhana: setiap kali pengguna mengetik, JavaScript mengirim permintaan ke file PHP di latar belakang. PHP mencari data di MySQL, lalu mengirim hasilnya kembali untuk ditampilkan — semua tanpa reload.

Sisi Front-End (HTML + JavaScript)

<input type="text" id="cari" placeholder="Cari produk...">
<div id="hasil"></div>

<script>
document.getElementById("cari").addEventListener("keyup", function() {
    fetch("cari.php?q=" + this.value)
        .then(res => res.text())
        .then(data => {
            document.getElementById("hasil").innerHTML = data;
        });
});
</script>

Setiap ketikan memicu fungsi yang mengambil hasil dari cari.php dan menampilkannya di dalam div hasil.

Sisi Back-End (cari.php)

File ini menerima kata kunci, mencari di database dengan aman, dan mengembalikan hasilnya:

<?php
$kata = "%" . $_GET["q"] . "%";
$stmt = $koneksi->prepare("SELECT nama FROM produk WHERE nama LIKE ?");
$stmt->bind_param("s", $kata);
$stmt->execute();
$hasil = $stmt->get_result();

while ($p = $hasil->fetch_assoc()) {
    echo $p["nama"] . "<br>";
}
?>

Pentingnya Keamanan

Perhatikan penggunaan prepared statement pada contoh di atas. Karena kata kunci berasal langsung dari input pengguna, mengabaikan ini akan membuka celah SQL injection yang serius.

Kesimpulan

Dengan Ajax search PHP, pencarian menjadi instan dan mulus, sangat meningkatkan pengalaman pengguna. Kombinasikan JavaScript untuk mengambil data dan PHP dengan prepared statement untuk memprosesnya secara aman.

Referensi: untuk penjelasan lebih mendalam, kunjungi dokumentasi resmi PHP (php.net).

Baca Juga

Ali Akbar

Software Developer yang fokus mengembangkan aplikasi berbasis Web dan Desktop. Senang mempelajari teknologi baru terutama di bidang web design dan web development.

View all posts by Ali Akbar →

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *