Pagination in PHP

 

Calculate total pages







Different records on each page

Calculate offset








$limit = 5;
if(isset($_REQUEST['page'])){
  $page = $_REQUEST['page'];
}else{
  $page = 1;
}
$offset = ($page - 1) * $limit;



    <!-- Pagination Start -->

<div class="w3-row pagination">

  <?php

    $sql2 = "SELECT pro_id FROM project_request pr

    INNER JOIN student s ON pr.pro_stu_id = s.stu_id

    WHERE pr.pro_review = ?";

 

    $result2 = $conn->prepare($sql2);

    $result2->execute(array(0));

    $row2 = $result2->fetchAll(PDO::FETCH_ASSOC);

    if($result2->rowCount()){

      $total_records = $result2->rowCount();

      $total_pages = ceil($total_records/$limit);

      echo '<ul>';

      if($page > 1){

        echo '<li class="w3-button w3-grey mx-1"><a href="projects.php?page='.($page-1).'">Previous</a></li>';

      for($i = 1; $i <= $total_pages; $i++){

       

        if($i == $page){

          $active = 'w3-dark-grey';

        }else{

          $active = '';

        }

        echo '<li class="w3-button w3-grey mx-1 '.$active.'"><a href="projects.php?page='.$i.'" class="w3-blue" style="padding:100%;">'.$i.'</a></li>';

      }

      if($total_pages > $page){

        echo '<li class="w3-button w3-grey mx-1"><a href="projects.php?page='.($page + 1).'">Next</a></li>';

      }

      echo '</ul>';

    }

  ?>

</div>

    <!-- Pagination End -->

Comments

Popular posts from this blog

File upload using JavaScript with validation (Apply validation on frontend side)

Diagonal Difference - HackerRank Solutions