मैं एक पेजिनेशन बनाना चाहता हूं इसलिए मैंने जो कोशिश की है वह यहां है

                <section class="products">
    <?php 



        $result_per_page=10;
        $get = mysqli_query($conn," SELECT * FROM products");
$number_of_results=mysqli_num_rows($get);
if (!isset($_GET['page'])) {

    $page=1;
} else{
    $page=$_GET['page'];

}

 $this_page_first_result=($page-1)*$result_per_page;

$get = mysqli_query($conn," SELECT * FROM products LIMIT ".$this_page_first_result.','.$result_per_page);
$number_of_results=mysqli_num_rows($get);
while ($row=mysqli_fetch_array($get)) {


    $name = $row['product_name'];
    $price = $row['product_price'];
    $img = $row['img'];

}


              $number_of_pages=ceil($number_of_results/$result_per_page);




    ?>


    <article>
                            <a href="showproduct.php">
<img src="adminpanel/<?php echo $img?>" alt="" style="height:13rem;width:13rem;"></a>
                            <h3><a href="showproduct.php"><?php echo $name;?></a></h3>
                            <h4><a href="showproduct.php">$<?php echo $price ?></a></h4>
                            <a href="cart.php" class="btn-add">Add to cart</a>
    </article>




                    </section>
                </div>
                <!-- / content -->
            </div>
            <?php  for ($page=1; $page <=$number_of_pages ; $page++) { 
                              echo '<a href="products.php?page='.$page.'">'.$page.'</a>';
                              } ?>
        </div>
        <!-- / container -->
    </div>
    <!-- / body -->
            </ul>

तो यहाँ मेरी समस्या है मुझे अपने डेटा बेस से केवल 1 परिणाम मिलता है, इससे कोई फर्क नहीं पड़ता कि मैं क्या करूँ मैंने $result_per_page को यादृच्छिक संख्याओं में बदल दिया है, कुछ समय मुझे अपने डेटाबेस में एक और परिणाम मिलता है और कुछ समय मुझे त्रुटि देता है मैंने कोड को बदलने की कोशिश की आसपास लेकिन फिर भी काम नहीं किया किसी को पता है कि मैं कहाँ गलत हो गया

php
0
John wiliam 25 पद 2019, 16:16

1 उत्तर

सबसे बढ़िया उत्तर

अपने लूप में आप प्रत्येक पुनरावृत्ति पर मानों को ओवरराइट कर रहे हैं। आप अपने HTML में केवल एक लेख आउटपुट कर रहे हैं। <article>..</article> कोड को अपने while लूप के अंदर रखें ताकि वह प्रत्येक पुनरावृत्ति के लिए प्रिंट हो सके।

अपने while लूप को इसमें बदलें:

while ($row=mysqli_fetch_array($get)) {
    $name = $row['product_name'];
    $price = $row['product_price'];
    $img = $row['img'];
?>
<article>
  <a href="showproduct.php"><img src="adminpanel/<?php echo $img?>" alt="" style="height:13rem;width:13rem;"></a>
  <h3><a href="showproduct.php"><?php echo $name;?></a></h3>
  <h4><a href="showproduct.php">$<?php echo $price ?></a></h4>
  <a href="cart.php" class="btn-add">Add to cart</a>
</article>

<?php
}

और अभी आपके पास मौजूद एकल <article>...</article> ब्लॉक को हटा दें।

0
brombeer 25 पद 2019, 13:30