Postingan lainnya
Membuat data post tidak hilang ketika pindah page
$yangdicari = $this->input->post('yangdicari');
gan sayakan membuat pagination pencarian yang datanya ngoper dari variable $yangdicari dengan metode post, tapi masalahnya ketika saya masuk page ke dua dari pagination variable $yangdicari nilainya kosong atau tidak ada nilainya padahal awalnya saya mencari data keluar datanya dan benar atau dangan kata lain awalnya saya memberi nilai pada $yangdicari melalui form,
jadi bagaimana carannya agar ketika saya masuk ke page kedua dari pagination, nilai dari variabel $yangdicari tidak berubah atau hilang TERIMAKASIH
3 Jawaban:
Jawaban Terpilih
saat membuat paginaton, cek dulu apakah data post ada atau tidak, kalau ada maka simpan data di session.
Nanti di modelnya, pada saat memanggil data tertentu cek apakah ada data "seach" di sessionnya atau tidak
contoh <a href=' https://makitweb.com/pagination-with-search-filter-in-codeigniter/ '>pembuatan pagination dengan search</a>
Here is a useful resource : https://onlinewebtutorblog.com/codeigniter-4-how-to-work-with-pagination-library-tutorial/
Anda dapat menggunakan metode appends
pada objek pagination untuk meneruskan nilai variabel $yangdicari
ke halaman berikutnya. Berikut adalah contoh kode:
$pagination = $this->pagination->create();
// Tetapkan nilai variabel $yangdicari
$yangdicari = 'foo';
// Tambahkan nilai variabel $yangdicari ke objek pagination
$pagination->appends(['yangdicari' => $yangdicari]);
// Dapatkan tautan pagination
$links = $pagination->links();
// Tampilkan tautan pagination
echo $links;
Ini akan menghasilkan kode HTML berikut:
<ul class="pagination">
<li><a href="?page=1">1</a></li>
<li><a href="?page=2">2</a></li>
<li><a href="?page=3">3</a></li>
<li class="next"><a href="?page=2">Next</a></li>
</ul>
Ketika pengguna mengklik tautan "Next", nilai variabel $yangdicari
akan diteruskan ke halaman berikutnya. Hal ini memungkinkan Anda untuk mencari nilai yang sama di halaman berikutnya.
Berikut adalah contoh lengkap bagaimana mengimplementasikan pagination dengan formulir pencarian:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class SearchController extends Controller
{
public function index()
{
// Dapatkan istilah pencarian dari permintaan
$term = request()->input('term');
// Dapatkan hasil yang dipaginasi
$results = $this->searchService->search($term);
// Tampilkan hasil pencarian
return view('search.index', [
'results' => $results,
'term' => $term,
]);
}
}
<!-- Formulir pencarian -->
<form action="/search" method="post">
<input type="text" name="term" placeholder="Cari...">
<input type="submit" value="Cari">
</form>
<!-- Tautan pagination -->
<ul class="pagination">
<li><a href="/search?page=1">1</a></li>
<li><a href="/search?page=2">2</a></li>
<li><a href="/search?page=3">3</a></li>
<li class="next"><a href="?page=2">Next</a></li>
</ul>
<!-- Hasil pencarian -->
<ul>
@foreach ($results as $result)
<li>
<a href="#">{{ $result->name }}</a>
</li>
@endforeach
</ul>