Anda di halaman 1dari 4

Cara buat pencarian dengan kategori dalam PHP

Proses searching ini akan menggunakan dua file PHP :


1. searching.php berisi form untuk melakukan pencarian berdasarkan tabel yang
ada di database bukutamu
2. searching_proses.php merupakan halaman selanjutnya ketika
tombol go ditekan

Tampilan searching.php
Kode lengkap searching.php :
</pre>
<h1>SEARCH</h1>
<table>
<tbody>
<tr>
<td>Search</td>
<td><select name="table"> <option value="-">--- table ---</option></select>
<select name="table"></select>
<select name="table"></select>
<select name="table"><option value="' . $tab.'">' . $tab .
'</option></select>
<select name="table"></select>
<select name="table"></select></td>
<td><input type="text" name="keyword" size="20" maxlength="255" /></td>
<td><input type="submit" value="go" /></td>
</tr>
</tbody>
</table>
<pre>
Halaman ini berfungsi menampilkan tabel-tabel yang ada di
database bukutamu dalam bentuk form select, disini kita akan memberikan
kebebasan dalam melakukan pencarian terhadap tabel tertentu.
$tables = mysql_list_tables( $nama_db );
Pengambilan data tabel dari database dilakukan dengan menggunakan
fungsi mysql_list_tables( $nama_db )yang nilai baliknya akan disimpan
dalam $tables dengan tipe variabel array.
while( list( $tab ) = mysql_fetch_array( $tables ) )
{
echo '' . $tab . '';
}
Dan nantinya variabel $tables akan ditelusuri jumlah nilai yang terkandung
didalamnya menggunakan blok pengulangan while().

Tampilan searching_proses.php
Kode lengkap searching_proses.php
$server = 'localhost';
$user_db = 'root';
$password_db = '';
$nama_db = 'bukutamu';

$link = mysql_connect( $server, $user_db, $password_db ) or die(


mysql_error() );
mysql_select_db( $nama_db ) or die( mysql_error() );

$table = $_REQUEST['table'];
$keyword = $_REQUEST['keyword'];

echo '</pre>
<h1>RESULT</h1>
<pre>
';

if( empty( $table ) || empty( $keyword ) || $table == '-' )


{
die('Tidak boleh ada kolom yang kosong
<a href="searching.php">Kembali</a>');

$fields = mysql_list_fields( $nama_db, $table, $link );


$columns = mysql_num_fields( $fields );

echo '<a href="searching.php">Kembali</a>';


echo '</pre>
<div style="width: 100%; background-color: #cccccc;"> Searching <strong>';
echo $keyword . '</strong> from table <em>' . $table . '</em></div>
<pre>
';

for ( $i = 0; $i < $columns; $i++ ) {


$sql = 'select * from ' . $table.' where '.mysql_field_name( $fields, $i ) .
' like "%' . $keyword . '%"';
$query = mysql_query( $sql );
$row = mysql_fetch_row( $query );

if( !empty( $row ) ) {


echo '

';
echo '</pre>
<table>';for( $a = 0; $a < $columns; $a++ ) {echo '
<tbody>
<tr>';echo '
<td>' . mysql_field_name( $fields, $a ) . '</td>
';echo '
<td>' . preg_replace( "/$keyword/i", '<span style="background-color:
yellow;">' . $keyword . '</span>', $row[$a] ) . '</td>
';echo '</tr>
';}echo '</tbody>
</table>
<pre>
';
echo '

';
}
}
?>
Meskipun hanya satu file namun saya yakin bagi yang baru belajar PHP
logika kode diatas cukup untuk membuat pusing untuk beberapa hari he.he.
Tapi setelah menguasainya logika pemrograman pasti lebih
tajam.searching_proses.php berisi blok syntax highlighter alias penyorot teks
sehingga hasil pencarian yang sama dengan kata kunci akan disorot seolah-
olah telah di-stabilo.
Akhirnya tutorial pengantar dalam belajar PHP membuat buku tamu
sederhana telah selesai. Semoga membantu dalam mengawali pembelajaran
bahasa pemrograman PHP
Langkah selanjutnya adalah perbaiki dan tambah fitur dalam buku tamu ini
untuk meningkatkan kemampuan PHP anda, contoh sederhana :
Satukan semua kode dalam sebuah website dengan navigasi yang konsisten
dengan susunan menu seperti Home | Bukutamu | about
Tambah informasi lain pada user, seperti nama, tgl lahir, tgl daftar, dll
Gunakan include() atau require() sehingga blok koneksi ke database tidak
perlu berkali-kali ditulis.
Supaya lebih interaktif kambah kolom balasan sehingga memungkinkan anda
atau pengguna melakukan komentar balasan terhadap sebuah komentar.
Tambahkan pagination atau pengaturan halaman <<first <prev 1 | 2 |3 next>
last>>, jadi kalau komentarnya ada 100 tampilkan 10 komentar
perhalamannya
Get improvise, anda punya potensi besar dalam mencetuskan ide sendiri
Download sourcecode searching.php dan searching_proses.php

Sumber >>>>>>> http://muslimpribadi.wordpress.com/2011/04/19/belajar-


php-bagian-5-searching/
Diposkan 16th January 2012 oleh NdY

Anda mungkin juga menyukai