i (am) Blogger and U?

from X-periment to X-perience

Badge/Watermark Image Generator

Badge/Watermark Image Generator adalah aplikasi web yang digunakan untuk membuat badge/watermark atau penanda pada foto/gambar yang biasanya digunakan misalnya pada penanda foto produk [...]

Aplikasi Web: URL Shortener Complete 2

URL Shortener Complete 2 adalah aplikasi yang membantu Anda untuk menjalankan situs/web yang memiliki fasilitas URL shortener. Pemendek URL sesuai namanya berfungsi untuk memangkas alam [...]

Profile / Portofolio Pro 2

Aplikasi Profil / Portofolio Pro 2, software berbasis web untuk pengelolaan portofolio atau untuk menampilkan profil baik perusahaan maupun perseorangan. Selain itu software ini dapat p [...]

Web Profil / Portofolio Basic 1

Web Profil/Portofolio Basic 1, aplikasi/software untuk mengelola portofolio (atau bisa juga dijadikan sebagai photo/image gallery) atau untuk menampilkan profil perusahaan maupun perseo [...]

One-Page Portofolio / Gallery 3

One-Page Portofolio / Gallery 3 memiliki fitur-fitur yang sama persis dengan One-Page Portofolio / Gallery 1 tapi dengan theme/template yang berbeda.

Aplikasi Web: Custom Form

Aplikasi Web Custom Form, software berbasis web dengan fitur utama adalah pembuatan DYNAMIC FORM (form web dinamis). Form ini terdiri dari berbagai jenis field, seperti field input text [...]

2017
14Sept

SQL Query, explode dan implode

Post category: Web Development

Search dalam suatu aplikasi biasanya digunakan lebih dari satu WHERE clause misalnya (contoh kali digunakan tabel bernama artikel dengan kolom id, title, content):

[sql]
SELECT * FROM artikel WHERE
title LIKE '%teknologi%' OR
content LIKE '%teknologi%' OR
title LIKE '%informasi%' OR
content LIKE '%informasi%'
[/sql]



Masalah yang akan dibahas kali ini adalah bagaimana membentuk bagian setelah WHERE dari input yang diberikan oleh user. Misalkan dalam aplikasi yang Anda buat ada fasilitas untuk pencarian dan user menginputkan kata-kata "tips trik linux" dalam form pencarian. Pertama kita pecah dahulu kata-kata tersebut menjadi kata dengan menggunakan function explode()
[php]
#ini sekedar contoh, pada praktek nyata
#dianjurkan untuk melakukan filtering (seperti strip_tags dll)
#terhadap setiap input sebelum diproses
$katakata = $_POST['search'];

$kata = explode(' ',$katakata);
[/php]



Akan kita dapatkan masing-masing kata dalam bentuk array
[php]
$kata[0] = 'tips';
$kata[1] = 'trik';
$kata[2] = 'linux';
[/php]



Pencarian akan dilakukan terhadap kolom title dan content untuk setiap kata
[php]
$kolom_cari = array();

foreach($kata as $word){
$kolom_cari[] = "title LIKE '%$word%'";
$kolom_cari[] = "content LIKE '%$word%'";
}
[/php]



Sekarang akan kita dapatkan bentuk array
[php]
$kolom_cari[0] = "title LIKE '%tips%'";
$kolom_cari[1] = "content LIKE '%tips%'";

$kolom_cari[2] = "title LIKE '%trik%'";
$kolom_cari[3] = "content LIKE '%trik%'";

$kolom_cari[4] = "title LIKE '%linux%'";
$kolom_cari[5] = "content LIKE '%linux%'";
[/php]



Akhirnya untuk menyambungkan semua array kita gunakan implode()
[php]
$like = implode(' OR ',$kolom_cari);
[/php]


Hasilnya adalah variabel $like akan berisi: title LIKE '%tips%' OR content LIKE '%tips%' OR title LIKE '%trik%' OR content LIKE '%trik%' OR title LIKE '%linux%' OR content LIKE '%linux%'.


No comments...
>> Comments closed. <<