Mencari Data di Laravel

Permisi :) saya ada masalah dalam mencari data di database menggunakan laravel. Sebagai contoh, saya mempunyai data makanan dengan nama "Nasi Merah Murah Meriah". Saat saya mencari data dengan kata kunci "Nasi Merah" data berhasil ditemukan, namun saat saya mencari data dengan kata kunci "Nasi Murah" atau "Nasi Meriah" data tidak ditemukan. Mungkin diantara temen2 ada yang bisa bantu? :)

ini script di controller saya

public function search(request $request)
    {
        $field = $request->get('search');
        $hasil = Artikel::where('judulartikel', 'LIKE', '%' . $field . '%')->paginate(5);
        return view('blog.result', $this->data, ['hasil' => $hasil, 'field' => $field]);
    }

avatar ambarroto
@ambarroto

14 Kontribusi 2 Poin

Diperbarui 7 tahun yang lalu

3 Jawaban:

Jawaban Terpilih

sesuai dengan struktur search nya dimana Like % keyword % dia akan otomatis nyari seluruh keyword yang diketik, dan mencari yang sebelum dan sesudahnya.

Kalau mau fleksibel per kata, bisa lihat yang namanya 'fulltextsearch' , untuk menggunakan fitur ini, kolomnya harus ditentukan kalau dia bisa pake fulltextsearch, contoh http://dev.mysql.com/doc/refman/5.7/en/fulltext-natural-language.html Untuk penggunaan di Laravel sendiri, kurang lebih seperti ini

Blog::whereRaw("MATCH(title) AGAINST (? IN BOOLEAN MODE)", [$search_q])->paginate(8);

avatar hilmanski
@hilmanski

2672 Kontribusi 2132 Poin

Dipost 7 tahun yang lalu

nah mas @hilmanrdn kolom yg bisa pake fulltextsearch apa bisa diubah langsung di phpmyadmin nya aatau menggunakan migrate? Kan kalo dari contoh kolom yg bisa dipake buat fulltextsearch udah ditetukan dari awal membuat tabel

avatar ambarroto
@ambarroto

14 Kontribusi 2 Poin

Dipost 7 tahun yang lalu

https://sekolahkoding.com/user/hilmanrdn

avatar ambarroto
@ambarroto

14 Kontribusi 2 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban