Kali ini kita akan mencoba pencarian sederhana dengan PHP. Pada pencarian ini kita akan mencari data yang ada di database mysql.
Yang dibahas di sini antara lain:
Pencarian di database mysql sederhana
Pencarian dengan 1 file php
mencegah menampilkan data apabila tombol submit belum diklik
Menampilkan nomor pencarian
menampilkan jumlah hasil pencarian
menampilkan pesan apabila hasil pencarian tidak ditemukan
Baiklah langsung aja kita mulai.
Langkah pertama adalah membuat database yang akan kita cari nantinya. Untuk lebih mudahnya gw siapkan query yang tinggal diexecute di PHPMyadmin Anda.
Caranya:
Buat database dengan nama pencarian
Kemudian klik SQL pada tab menu atas.
Kemudian paste kode sql di atas.
Maka jadilah database Anda
Langkah ke dua adalah menampilkan data. Kita buat menampilkan data dulu kemudian nanti kita modifikasi untuk menampilkan hasil pencarian.
kita buat dulu folder cari di dalam folder www (apabila menggunakan appserv) atau di dalam folder htdocs (apabila menggunakan xamps)
kemudian kita buat file php dengan nama tampil.php
ini adalah script sederhana untuk menampilkan data. Nantinya kita ubah agar bisa menampilkan hasil pencarian
Merubah script agar bisa menampilkan data tertentu.
Di sini kita tinggal mengubag kode SQLnya. Kita bisa menggunakan LIKE diikuti kata yang ingin dicari. Dan diikuti kata yang dicari dan diberi tanda %.
Contoh: apabila kita ingin menampilkan semua siswa yang berawalan huruf s maka kita buat seperti ini:
Cukup mudah bukan? Mari kita lihat script selengkapnya:
Yang tidak boleh dilupakan tentunya adalah form pencariannya.OK mari kita buat file dengan nama form_cari.htm
Sebuah form sederhana ini nantinya digunakan untuk memasukkan kata yang hendak kita cari.
Cermati kode berikut ini:
Ini maksudnya pencarian akan dilakukan di file tampil.php yakni file yang kita buat sebelumnya.
Form pencarian sudah OK. Kita tinggal tangkap variabel dari form_cari.php.
Karena metode yang digunakan adalah POST kita bisa menangkap variabelnya dengan $_POST['search'];
search di sini adalah id dari Text Field di form pencarian.
Ini dia script yang udah kita modifikasi:
Agar lebih simple kita bisa menjadikan 2 file (tampil.php dan form_cari.htm) menjadi satu file.
Tapi kita juga harus memikirkan agar kode dieksekusi apabila tombol cari sudah dipencet. :D
Tidak lucu apabila belum diapa-apain udah basah eh maaf, sudah mengeksekusi script. Yang ada hanyalah menampilkan halaman kosong atau lebih parah lagi menampilkan kode error.
Maksud kode di atas adalah kode yang diantara kurung kurawal hanya akan dieksekusi jika $_POST['submit']sudah diklik dan apabila ($_POST['search'] sudah ada nilainya.
Mari kita lihat script yang sudah jadi. dan ingat cukup satu file ini untuk menghandle pencarian.
Perhatikan pula kode <?$_SERVER['PHP_SELF']?> yang semula adalah tampil.php. Kode diatas untuk mencegah adanya error apabila nama file diganti dan akan mengeksekusi dirinya sendiri.
Sedikit Tambahan.
Kita coba modif dikit kode diatas agar bisa menampilkan:
nomor pencarian
jumlah pencarian
pesan apabila tidak ada hasil pencarian
Untuk nomor pencarian kita bisa menggunakan increement dengan kode sederhana berikut:
Sangat mudah dan simple..
Untuk jumlah pencarian kita bisa gunakan sedikit kode ini:
Sedangkan untuk pesan zero data kita bisa bikin conditional seperti ini:
Kode lengkapnya seperti ini:
Gw rasa itu aja cukup untuk pencarian. Hal-hal yang perlu dilakukan agar pencarian menjadi lebih baik adalah:
menambahkan fasilitas anti sql injection
anti XSS atack. Tapi bisa nggak yah XSS attack lewat pencarian gini?
sorry bro karena
fast coding ternyata
ada code yg nggak
optimal.
di xampp versi PHP 4
masih jalan
sebenernya.
tapi untuk lebih
bagusnya diganti
seperti ini biar
jalan di semua
server:
echo
$res[nama].'<br>';
jadi
echo
$res['nama'].'<br>';
nama diapis sama
quote. itu aja...
makasih
fiqar pada November 17, 2011 (11:49AM)
mas, sebelumnya ane
terikasih sama
tutorial yg mas
buat, tetapi setelah
saya ikuti cara yang
mas berikan diatas,
saya menemukan
eror
" Ada 1 data
yang sesuai.
Notice: Undefined
variable: nomor in
C:\xampp\htdocs\test_pdf\tampil.php
on line 29
1.
Notice: Use of
undefined constant
nama - assumed
'nama' in
C:\xampp\htdocs\test_pdf\tampil.php
on line 30
Kyubi naruto
"
mohon pencerahannya
mas
Diwan pada November 6, 2011 (3:18AM)
Mas, kalau mau buat
pencarian dgn multi
kolom dan hasilnya
ditampilkan dalam
bentuk tabel, terus
tiap hasil
pencarianya bisa
ditampilkan detil
infonya gimana Mas?
Misalnya pencarian
berdasarkan
provinsi, rentang
usia, kemudian hasil
pencariannya bisa
ditampilkan detilnya
satu-satu.
Maklum Mas, msh
baru..
@farhan: apakah
databasenya sudah
dibuat? tabelnya
sudah? apakah nama
tabel sesuai? apakah
field nama di tabel
tersebut udah
ada?
lacak dari awalnya.
m farhan pada February 28, 2011 (7:11AM)
setelah di coba kok
muncul pesan error
spt ini :
Undefined variable:
nomor in
C:\xampp\htdocs\latihan\tampil.php
on line 29
1.
Notice: Use of
undefined constant
nama - assumed
'nama' in
C:\xampp\htdocs\latihan\tampil.php
on line 30
knapa ya..
sangat bermanfaat
sekali kk source
nya..ijin
mempelajari..
pande pada August 28, 2010 (5:02AM)
WAHHHHHHHH.......setelah
gua baca dari atas n
lansung praktek /
EXSEKUSI
MATI.....wkakakk...
sempet ribet pas
edit2 ..maklum gua
awam....
yah...sempat eror
dikit....terus baca
eh.... sukses....dan
yang lebih MACHO
lagi udah baca
sampai akhir ada
bacaan
"Download file:
kode lengkap
pencarian sederhana
mysql dan
php"
wahhhh tau gitu
lansung donlot
toh...tapi tak
apa...lumayan
membaca menambah
ilmu.
wkaakkaka
keren2.....lansung
gua donlot
deh....
makasi ya
mas....sumpah
begunan banget buat
gua... :D
salam dari bali
darwis pada August 5, 2010 (8:35PM)
gw hmpr putus asa
buat bikin kode php
untuk pencarian.
Mau coba yang
sederhana dulu dari
gecho.. mudah2 an
berhasil.
Yang sudah2 kode php
sudah bisa
dieksekusi, database
sudah connect, tapi
gak muncul apa2 stlh
dtekan tombol cari
(layar blank aja
warna putih). memang
sih udah sukur ga
ada pesan salah atau
gagal di kode
phpnya. kira2 apa yg
salah kalau gitu?
Diskusikan Artikel Ini
* = required field