v2.5.2
Giriş yap

Php'de Site İçi Arama'da Listeleme Sayısına Göre Sayfalama Görüntülenmesi

yazilimyolcusu
490 defa görüntülendi

Merhabalar. Php'de listeleme yapıyorum. "index.php" sayfasındayken site içi arama yapıyorum. Arama sonrası eğer listeleme 5'ten büyük çıkarsa 2. sayfayı göstersin, eğer 5'ten küçükse göstermesini istemiyorum. Bakın 2. sayfa çıkıyor ama boş. Yani listelemeye göre ayarlama istiyorum. Ne yapmamı önerirsiniz?

yazilimyolcusu
810 gün önce

Arkadaşlar acaba elinde site içi arama yaptıktan sonra listeleme yapabilen bir kod var mı elinizde? Kendi uğraştığım yerde nerede hata yapıyorum anlarım. Veya aşağıdaki kodlar bana şu hatayı veriyor?
Hata :

PHP Fatal error:  Uncaught Error: Call to a member function fetch_array() on string in

index.php

<div class="arama-alani-div">
    <form action="arama.php" method="POST">
    <input type="text" name="kelime" placeholder="Arama yap">
    <input type="submit">
    </form>
</div>

arama.php

<?php 
if($_POST) { 
$ara = $_POST['kelime'];
$sayfalamasorgusu = "SELECT yaziekle_id, yaziekle_resim, yaziekle_baslik, 
yaziekle_konu, yaziekle_kategori FROM yaziekle WHERE yaziekle_baslik like '%$ara%'";
/* $sayfalamasorgu = $db->query($sayfalamasorgusu); */
?>

<?php
$sayfa = @$_GET['sayfa'];
if((empty($sayfa)) or (!is_numeric($sayfa))) {
$sayfa = 1;
}
$kacar = 3;
$sayfalamasorgusu = "SELECT yaziekle_id, yaziekle_resim, yaziekle_baslik, 
yaziekle_konu, yaziekle_kategori FROM yaziekle";
$sayfalamasorgu = $db->query($sayfalamasorgusu);
$sayfalamasorgusay = $sayfalamasorgu->num_rows;
$sayfasayisi = ceil($sayfalamasorgusay/$kacar);
$neredenbaslasin = ($sayfa*$kacar)-$kacar;
$bulsorgusu = "SELECT * FROM $sayfalamasorgusu ORDER BY yaziekle_baslik DESC LIMIT $neredenbaslasin, $kacar";
/* $bulsorgu = $db->query($bulsorgusu); */
$row = $bulsorgusu -> fetch_array(MYSQLI_ASSOC);
foreach($row as $bul) { ?>


<div class=icerikalani-div>
        <div class="icerik-ic-alani">
            <div class="resim-div">
                <img src="images/eklenenyaziresimleri/<?php echo $bul['yaziekle_resim']; ?>">
            </div>

            <div class="baslik-ve-yazi-alani-kategori-ve-devaminioku">
                <div class="yazi-alani-baslik">
                    <?php echo $bul['yaziekle_baslik']; ?>
                </div>

                <div class="yazi-alani-yazi">
                    <?php echo nl2br($bul['yaziekle_konu']); ?>
                </div>


                <div class="kategori-ve-devaminioku-alani">
                    <div class="yazi-alani-kategori">
                        <?php echo $bul['yaziekle_kategori']; ?>
                    </div>

                    <div class="yazi-alani-devaminioku">
                        <a href="devaminioku.php?devam=<?php echo $bul['yaziekle_id']; ?>">Devamını Oku</a>
                    </div>
                </div>
            </div>
        </div>
    </div>


<?php }  ?>


<?php
    for($i=1; $i<=$sayfasayisi; $i++) {
        echo "<a href='arama.php?sayfa={$i}'>{$i}</a>";
    }
?>



<?php } ?>