Kami Hadir Membantu Anda Dalam Pengembangan Usaha Anda

Ketapang, Kalimantan Barat elektranetworkvision@gmail.com
Posted On June 21, 2025

🔍 Belajar Laravel dari Nol – Part 5 (Lanjutan): Pagination & Pencarian Data Produk

elektra_network 0 comments

Fitur pencarian dan pagination sangat dibutuhkan saat data sudah banyak, seperti dalam sistem produk, pelanggan, transaksi, dll. Dengan Laravel, implementasi fitur ini sangat efisien menggunakan query builder atau Eloquent.


🎯 Tujuan Part Ini

  • Menerapkan pagination pada halaman data produk
  • Menambahkan fitur pencarian produk berdasarkan nama
  • Menjaga performa dan UX saat data bertambah

🧱 Struktur Awal: Model Produk

Sudah dibuat pada part sebelumnya:

protected $fillable = ['nama', 'harga', 'foto'];

🧭 1. Routing

Tidak perlu tambahan route baru. Gunakan route produk.index:

Route::resource('produk', ProdukController::class);

🛠️ 2. Tambahkan Fitur Pencarian di Controller

Edit ProdukController.php, method index():

public function index(Request $request)
{
    $keyword = $request->get('cari');

    $produk = Produk::when($keyword, function ($query) use ($keyword) {
        $query->where('nama', 'like', "%$keyword%");
    })->orderBy('id', 'desc')->paginate(5);

    return view('produk.index', compact('produk', 'keyword'));
}

🖥️ 3. Tambahkan Form Pencarian & Pagination di View

a. Form Pencarian

Tambahkan di bagian atas index.blade.php:

<form action="{{ route('produk.index') }}" method="GET">
  <input type="text" name="cari" value="{{ request('cari') }}" placeholder="Cari produk...">
  <button type="submit">Cari</button>
</form>

b. Tampilkan Data + Pagination

@foreach($produk as $p)
<tr>
  <td>{{ $p->nama }}</td>
  <td>{{ $p->harga }}</td>
  <td>
    @if($p->foto)
      <img src="{{ asset('uploads/produk/' . $p->foto) }}" width="60">
    @else
      <small>-</small>
    @endif
  </td>
</tr>
@endforeach

c. Link Pagination

<div>
  {{ $produk->appends(['cari' => request('cari')])->links() }}
</div>

⚙️ 4. Hasil: UX Lebih Rapi & Performant

  • Data hanya ditampilkan per 5 entri (paginate)
  • User bisa mencari produk berdasarkan nama
  • Halaman tetap ringan & cepat meski data banyak

🔐 Tips SEO & UX

AspekRekomendasi
URL ramah mesinGunakan query string seperti ?cari=produkA&page=2
Pagination UXGunakan Tailwind/Bootstrap untuk tampilan yang rapi
Search RealtimeGunakan AJAX atau Livewire (lanjutan fitur)

🧰 Elektra Network Vision – Solusi Laravel CRUD, Filter & Search

Kami bantu Anda:

  • Membangun panel admin Laravel lengkap
  • Optimasi fitur search + filter dinamis
  • Integrasi frontend modern (Livewire, Vue, AJAX)

🌐 elektranetworkvision.com — Spesialis Laravel & sistem manajemen data profesional untuk bisnis Anda.

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

Web Development Trends 2025: Menavigasi Masa Depan Website Modern

Di tahun 2025, pengembangan web tidak hanya soal membuat situs yang berjalan. Ini tentang menciptakan…

Mengapa Website Responsif Menjadi Kunci Kesuksesan Bisnis di Era Digital

Pendahuluan Di era digital saat ini, kehadiran online sebuah bisnis bukan lagi pilihan, melainkan kebutuhan.…

Quantum AI di Indonesia: Peluang, Tantangan, dan Masa Depan Teknologi Kecerdasan Buatan Kuantum

Quantum AI atau Quantum Artificial Intelligence adalah integrasi antara teknologi komputasi kuantum dengan kecerdasan buatan…