Tutorial PHP Metode Searching - Multiple Keyword

dokumen-dokumen yang mirip
Membuat Halaman Login Dengan PHP

E-trik Ajax. Database MySQL. Dedi Alnas

Membuat Database mysql dengan PhpMyAdmin

MySQL Full-Text Searching

Menangani Input dari User

DATABASE MYSQL DENGAN PHP

b) Membuat database tiket. Siapkan databasenya dengan membuat database tiket Sampai langkah ini database tiket sudah siap digunakan

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

Tutorial PHP Kalkulator online dengan PHP

Script PHP dan MySQL J A M K E E M P A T

P - 12 Bab 9 : PHP & MySQL

Pemrograman Web. Koneksi dan Manipulasi Basis Data. 7 Adam Hendra Brata

Pemrograman Web. Koneksi dan Manipulasi Basis Data. 7 Adam Hendra Brata

Tutorial PHP Register Login Logout Script

Pertemuan Ke-13 (PHP & MYSQL) Adi Widodo,S.Kom.,MMSI 1

2. inputkk.php. 3. tampilkk.php

PHP & MYSQL. Ingat, PC anda tidak memerlukan tambahan khusus atau apapun untuk melihat hasil eksekusi kode PHP anda. Mengapa?

MySQL Databases. Dasar-dasar MySQL dan Implementasi MySQL kedalam pemrograman PHP. Jakarta, 16 April 2011 Oleh: M. Awaludin, S.Kom

BAB III IMPLEMENTASI. Program penghubung database tersebut disimpan dengan nama. konek.php. Berikut merupakan kode program penghubung Database :

Loka Dwiartara

Bondan Muliawan

MySQL J A M K E T I G A

Mahasiswa memahami Pengertian Basisdata, Cara membuat basisdata, cara menginput data dan cara menampilkan data.

Menampilkan Data MySql Menggunakan Dreamweaver

BAB X AKSES DAN MANIPULASI DATA

MODUL 10 KONEKTIVITAS PHP DENGAN MySQL

Cara Sederhana Import Data dari Excel (CSV) ke MySQL dengan PHP

Dasar PHP-MySQL oleh : Prasaja Wikanta

Tutorial Singkat MySQL

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah

Pemrograman Web. Koneksi dan Manipulasi Basis Data. Adam Hendra Brata

Langkah 1 Struktur Folder. Langkah 2 Database. Detil Tutorial

Widhy Hayuhardhika NP, S.Kom

Tutorial Membuat WEB Dinamis Dengan PHP

MODUL 5 KONEKTIVITAS PHP DENGAN MySQL

Membangun koneksi dari PHP ke MySQL adalah dengan fungsi mysql_connect();

Membuat CRUD Sederhana Menggunakan PHP Dengan Mysqli Extension

Membuat Halaman Admin Untuk Web Buatan Sendiri

LAMPIRAN. Lampiran 1 Wawancara dengan Bapak Thoriq Rachmat selaku Manager IT di PT. 1. Apakah perusahaan saat ini membutuhkan sistem server yang baru?

MySQL. Pemrograman Web/MI/D3 sks 1

Hak Akses dan Login Multi User. Baiklah untuk mulai praktek yang pertama ini file yang dibutuhkan adalah seperti yang terlihat dalam gambar berikut :

E-trik Ajax. Ajax dan MySQL. Dedi Alnas

Materi

Membuat Login Dengan PHP dan MYSQL

DATABASE OPERATION. Pemrograman Web. Rajif Agung Yunmar, S.Kom

Bagian 20. Bekerja dengan Form menggunakan PHP.

Budi Permana, S.Kom Pendahuluan

MODUL 11 MEMBUAT LOGIN USER

Konektivitas PHP - MySQL

Persiapan Table Untuk Latihan Sebelum kita berkenalan lebih jauh dengan Trigger, mari kita buat terlebih dahulu, struktur table yang dibutuhkan.

PRAKTIKUM I MySQL / phpmyadmin

Nofriza Nindiyasari

Langkah 1. Asep Tatang S.

Pemrograman Web Lanjut 2017

Form Pemesanan. Arief Susanto

LAMPIRAN. 1. Listing Program pada website sekolah. index.php

Tutorial Membuat Program Web menggunakan PHP, MySQL, dan PHP

PHP dan MySQL. Mempelajari koneksi PHP. Fungsi-fungsi aksesnya. Muhammad Zen Samsono Hadi, ST. MSc

MODUL PEMROGRAMAN WEB

Simak baik-baik komentar-komentar dalam setiap skrip. Komentar diawali dengan tanda #, //, atau /* dan */

Pemrograman Web Lanjut 2017

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

PHP & Mysql. Pemrograman Internet

MODUL PEMROGRAMAN WEB

Checkbox dengan Foreach dan MYSQL

PHP dan MySQL. Mempelajari koneksi PHP dengan database MySQL dan Fungsi-fungsi aksesnya. Muhammad Zen S. Hadi, ST. MSc.

Menampilkan user online seperti di obrolan step by step

Modul Pembuatan Aplikasi Login dengan PHP dan MySQL

Lisensi Dokumen: Uraian Kasus :

KapitaSelekta. (KBKI82127, 2 sks) Materi : Pengenalan MySQL

Membuat Online Messanger atau Chat dengan PHP, MySQL, JQuery, Bootsrtrap 3 dan Font Awesome 4 [Part 2]

INTRO PHP FORM PHPMYADMIN input update delete TEMPLATE SEDERHANA

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah

Dengan asumsi bahwa aplikasi masih menggunakan cookie, maka query untuk membuka profil adalah seperti berikut:

MODUL 8 MEMBUAT USER DAN MENGAKSES DATABASE

1. TUJUAN Mahasiswa dapat memahami langkah-langkah koneksi PHP dengan MySQL Mahasiswa dapat memahami pengambilan record dari database

Aplikasi CRUD Sederhana Dengan PHP dan MySql

Mengakses database MySQL melalui PHP

Mohammad Safii

Langkah Cara Membuat Form Login Menggunakan PHP dan MySQL Langkah 1: Membuat Tabel MySQL User/Pengguna

Pemrograman Web Lanjut 2017

Membuat Toko Buku dengan PHP - MySQL

MODUL 7 MEMBUAT DATABASE DI MYSQL

Membuat Shopping Cart Sederhana Menggunakan PHP

Advantages. Keunggulan :

3 Cara Belajar HTML, PHP dan MySQL. Nama Penulis Lisensi Dokumen:

BERKENALAN DENGAN MODEL CODEIGNITER

Membuat Laporan dengan Bahasa Pemrograman Berbasis WEB

Pemrograman Basis Data Berbasis Web

Materi 10: Create Read Update Delete

Mudafiq Riyan Pratama Pendahuluan. Lisensi Dokumen:

BAB VII Database MYSQL

STUPID LOGIC PROGRAMMING II

Membuat Fasilitas Readmore dengan TInyMCE

PENGENALAN HTML - 2. Anda bisa menambahkan beberapa cell (kolom) untuk membuat satu baris cell (kolom).

PRAKTIKUM PHP 10. Menyimpan Data ke Database & Menampilkan Data dengan PHP

Mesin Pencari Dokumen Karya Ilmiah pada Lingkungan Akademik (Scientific Documents Search Engine in Academic Environment)

echo zine, issue // Pengamanan URL dengan MAC

Gambar 4.1 Gambar Use Case Diagram

Transkripsi:

Tutorial PHP Metode Searching - Multiple Keyword Lisensi Dokumen: Dokumen di ilmuwebsite.com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuwebsite.com Tutorial kali ini sebetulnya hanyalah pengembangan dari tutorial sebelumnya, Metode Searching Sederhana ( selengkapnya dapat dilihat di http://www.ilmuwebsite.com/detil_php_tutorial/16/metode_searching_sederhana_v.1/ ). Setelah menerima masukkan dari salah satu staff ilmuwebsite, akhirnya saya mencoba untuk sedikit memoles beberapa bagian. Penambahan-penambahan yang saya lakukan : Multiple Searching, dengan kata lain, user dapat melakukan searching dengan multiple keyword. Bold dan Highlight pada setiap keyword yang dicari. Seperti biasa, dalam tutorial kali ini, saya hanya menjelaskan sedikit saja, karena sebagian besar telah dijelaskan pada tutorial sebelumnya. Tetapi sebelumnya, yang kita butuhkan adalah sebuah database : create database cms_db; use cms_db; create table cms_artikel (id int(3) primary key auto_increment, judul_artikel varchar(100), penulis_artikel varchar(70), isi_artikel text); 1

insert into cms_artikel values('','ryuzaki...','al-k','pada dasarnya ryuzaki itu tidak ganteng :D'); insert into cms_artikel values('','sejati...','al-k','kegantengan sejati pemilik ketampanan... '); insert into cms_artikel values('','kegantengan Sejati','Al-k','Begitulah, kadang orang melihat seseorang hanya dari penampilannya saja. Sebagian besar mengatakan, semuanya kan berawal dari penampilan, penampilan yang baik membuktikan yang berpenampilannya memiliki hati seperti itu. Padahalkan nggak kaya gitu, iya nggak? Jujur aja, dalam hal ini gw sama kaya loe, termasuk orang yang berpenampilan apa adanya, yang ada ya gw pake, kalo yang nggak ada, gw nggak akan pake. to be continued!!!'); // file config.php <?php $host = "localhost"; $username = "root"; $password = ""; $databasename = "cms_db"; $connect = mysql_connect($host, $username, $password) or die ("Nggak bisa konek!"); mysql_select_db($databasename, $connect) or die("nggak bisa konek!");?> // dan script inti, index.php <?php // Searching Multiple Keyword // /////////////////////////////// // by : Loka Dwiartara a.k.a Al-k // alkemail@gmail.com // http://www.ilmuwebsite.com // /////////////////////////////// include "config.php"; $mode = $_REQUEST['mode'] ; $id = $_REQUEST['id']; // menghilangkan space di kiri dan kanannya $search = trim($_post['search']); // memisahkan array perkata $search_array = explode(" ",$search); $banyak_kata = (integer)count($search_array); // query looping, sehingga menghasilkan // select * from cms_artikel where isi_artikel // like '%$search_array[$x]%' AND isi_artikel like '%%' 2

$searchquery = "select * from cms_artikel where " ; $searchquery.= "isi_artikel like '%$search_array[$x]%'"; if ( $x < $banyak_kata ) $searchquery.= " AND "; $runsearchquery = mysql_query($searchquery); $viewquery = "select * from cms_artikel where id = '$id'"; $runviewquery = mysql_query($viewquery); if ($mode == "search" ) $numrows = mysql_num_rows($runsearchquery); // memberikan highlight dan bold pada string yang dicari // dengan looping sebanyak $banyak_kata print "String yang anda cari : "; $search_replace[$x] = "<b><font style='background-color:yellow'> $search_array[$x]</b></font>"; print "$search_replace[$x] "; print "<br>data yang anda cari, ada dalam database sebanyak : <b>$numrows</b><hr>" ; while ( $result = mysql_fetch_array($runsearchquery)) $id = $result['id']; $judul = $result['judul_artikel'] ; $isi = $result['isi_artikel']; // memberikan highlight dan bold pada setiap kata yang dicari $isi_baru = str_replace($search_array, $search_replace, $isi); $isi_display = substr($isi_baru, 0, 800); $isi_display = substr($isi_baru, 0, strrpos($isi_display, " ")); 3

print "<a href=?mode=view&id=$id>$judul</a><br>$isi_display... <br><br>"; print "<hr><a href=index.php>kembali</a>"; else if($mode == "view") while ( $result = mysql_fetch_array($runviewquery)) $id = $result['id']; $judul = $result['judul_artikel'] ; $penulis = $result['penulis_artikel']; $isi = $result['isi_artikel']; print "<b><u>$judul</u></b><br>penulis : $penulis<br>$isi"; print "<hr><a href=index.php>kembali</a>"; else?> <html> <head> <title>search Database... </title></head> <body> <br> <table border=1 align=left bgcolor=lightblue> <form method=post action=?mode=search> <tr><td>search:<br><input type=text name=search> <input type=submit name=submit value=cari></td></tr> </form> </body> </html> <?php?> Cukup Panjang tapi bermakna :D. Ya, sebelum saya jelaskan script diatas, ada baiknya kita lakukan review terlebih dahulu mengenai query sql untuk single keyword. 4

select * from cms_artikel where isi_artikel like '%$search%' query diatas, berfungsi melakukan seleksi terhadap database, mengacu kepada field isi_artikel, dengan single keyword. Bagaimana jika sang user memasukkan multiple keyword? jelas hasilnya akan 0. Terkecuali jika multiple keyword yang dicari berada secara berurutan dalam database. Di sinilah letak jawabannya, mysql mengijinkan kita menggunakan multiple keyword sekaligus dalam melakukan pencarian database. Dengan penambahan operand AND di antara keyword yang dicari. Sehingga apabila kita mencari 3 keyword sekaligus, maka mysql mengizinkan kita menggunakan query seperti ini : select * from cms_artikel where isi_artikel like '%$keyword1%' AND '%$keyword2%' AND '%$keyword3%' Melihat query di atas, penggunaan looping pada php sangat dibutuhkan untuk mengimplementasikannya. Ketika user memasukkan keyword ke dalam textbox search, yang harus dilakukan adalah memisahkan/memecah keyword tersebut dalam sebuah array : $search_array = explode(" ",$search); Langkah selanjutnya, menghitung berapa banyak variable yang terdapat dalam array tersebut. Hal ini digunakan sebagai titik acuan berapa banyak looping akan dilakukan nantinya. $banyak_kata = (integer)count($search_array); Setelah itu? looping? $searchquery = "select * from cms_artikel where " ; $searchquery.= "isi_artikel like '%$search_array[$x]%'"; if ( $x < $banyak_kata ) $searchquery.= " AND "; Sehingga $searchquery nantinya menjadi : select * from cms_artikel where isi_artikel like '%$search_array[0]%' AND '%$search_array[1]%' AND '%$search_array[2]%' AND '%$search_array[n]%' Untuk melakukan bold dan highlight pada keyword yang dicari pada dasarnya hanya mereplace string sebelumnya dengan tag bold dan highlight. Sebagai contoh dalam sebuah variable $sejati =?Ryuzaki pada dasarnya tidak ganteng?; Kemudian kita akan melakukan perubahan ganteng menjadi ganteng 5

Maka? Str_replace (?ganteng?,?<b>ganteng</b>?,$sejati); Hasilnya? Ryuzaki pada dasarnya tidak ganteng Karena dalam bentuk array maka perlu dilakukan looping masal terhadap isi array tersebut. print "String yang anda cari : "; $search_replace[$x] = "<b><font style='background-color:yellow'> $search_array[$x]</b></font>"; print "$search_replace[$x] "; Sehingga? Lakukan bold dan highlight : $isi_baru = str_replace($search_array, $search_replace, $isi); Terimakasih, Loka Loka Dwi Artara (Al-k) http://www.ilmuwebsite.com Sumber artikel : http://www.ilmuwebsite.com/detil_php_tutorial/19/metode_searching_-_multiple_keyword/ Penulis : Loka Dwi Artara Terbit : 13-12-2007 Penerbit : http://www.ilmuwebsite.com 6