codeigniter search pagination
3
●416
- 23-06-2019, 12:37:01codeigniter da arama yaptıgım sayfa da sayfalama yapmak istiyorum. Uğraştım ama tam anlamıyla yapamadım yardımcı olacak bir arkadaş varmıdır ?
- 24-06-2019, 18:50:44Merhabalar,mstfkrtll61 adlı üyeden alıntı: mesajı görüntüle
aranan kelimeyi sessiona atayıp yada urlye yazdırıp buna göre sayfalandırma yapabilirsiniz.
daha detaylı istiyorsanız ufak bir kod yazabilirim - 25-06-2019, 15:30:27@codelady; teşekkürler sessiona bile gerek kalmadan çözdüm olayı. Teşekkürler yinede
- 03-07-2019, 01:58:16Yukarıda arkadaşın dediği gibi sessiona atamak da mantıklı, başka bir öneri daha sunayım ben.
formun submit özelliğini devre dışı bırak ara butonuna basıldığında bir javascript kodu aranan şeyi bir değişkene atasın boşlukları kendi belirleyeceğin bir özel karakterle değiştirip. sonra alanadi.com/arama/ananan-kelime gibi bir adrese göndersin, aranan-kelime örneğinde boşluklar - ile değiştirilmiş, arama sonuçlarını göstereceğin controller/method içerisinde belirlediğin özel karakteri tekrar boşlukla değiştir ve o şekilde aranan veriyi almış olursun. pagination kısmında ise init öncesi configdeki base_url değerini uri kütüphanesi ile aranan kelimenin bulunduğu segmente ayarla. olay bitmiştir.
Örnek:
view:
<form name="arama" onsubmit="arama_yap()" method="post"> <input type="text" name="aranan"> <input type="submit" value="Ara"> </form>
javascript:
<script type="text/javascript"> function arama_yap() { var aranan = document.forms["arama"]["aranan"].value; var ara = aranan.replace(/ /g ,"-"); location.href(<?= base_url('cms/arama/')?>+ara); ##location.replace(<?= base_url('cms/arama/')?>+ara); } </script>controller:
<?php class Cms extends CI_Controller { public function arama($aranan) { $this->load->library('pagination'); $config['base_url'] = base_url('cms/arama/'.$aranan); // Lazım olursa $config['uri_segment'] = 3; $config['total_rows'] = 200; $config['per_page'] = 20; $this->pagination->initialize($config); $aranan = str_replace('-',' ',$aranan); //veritabanından $aranan değişkenine göre aramanı yaptır arama sonuçlarının olduğu viewi çağır } }Ek olarak karakter değiştirmek yerine base64_encode base64_decode gibi enc/dec işlemleri ile de kullanabilirsin