Using Paging via PHP

By | March 18, 2022
Using Paging via PHP

Whenever we fetch data from the database, we are nor sure about the amount of record that is present there. We need to manage the record so that it would not look messy and should be handled in an appropriate way. So we have to divide the records to be displayed per page that’s where we use the paging technique to handle the records.

Here we use the LIMIT clause of MySQL to generate the paging. This clause takes up two arguments, first is the offset and the second argument specifies the number of records to be returned.

Example:

<html>
   <head>
      <title>Paging Using PHP</title>
   </head>   
   <body>
<?php
   $db_host = 'localhost:3036';
   $db_user = 'root';
   $db_pass = 'rootpassword';
   $db_conn = mysql_connect($db_host, $db_user, $db_pass);
$record_limit=15;
   if(! $db_conn ) {
      die('Connection failed: ' . mysql_error());
   }
      mysql_select_db('demo_db');
$db_sql = 'SELECT count(stu_id) FROM student';
   $db_retval = mysql_query( $db_sql, $db_conn );
if(! $db_retval ) {
      die('data cannot not be retrieved: ' . mysql_error());
   }
$db_row = mysql_fetch_array($db_retval, MYSQL_NUM );
         $record_count = $row[0];
         if( isset($_GET{'page'} ) ) {
            $page = $_GET{'page'} + 1;
            $offset = $record_limit * $page ;
         }else {
            $page = 0;
            $offset = 0;
         }
         $left_rec = $record_count - ($page * $record_limit);
         $db_sql = "SELECT stu_id, stu_name, stu_salary ". 
            "FROM student ".
            "LIMIT $offset, $record_limit";
         $db_retval = mysql_query( $db_sql, $db_conn );
         if(! $db_retval ) {
            die('data cannot be retrieved: ' . mysql_error());
         }
while($db_row = mysql_fetch_array($db_retval, MYSQL_NUM)) {
      echo "STU ID :{$db_row[0]}  <br> ".
         "STU NAME : {$db_row[1]} <br> ".
         "STU ADDRESS : {$db_row[2]} <br> ".
         "--------------------------------<br>";
}
if( $page > 0 ) {
            $last = $page - 2;
            echo "<a href = \"$_PHP_SELF?page = $last\">Last 10 Records</a> |";
            echo "<a href = \"$_PHP_SELF?page = $page\">Next 10 Records</a>";
         }else if( $page == 0 ) {
            echo "<a href = \"$_PHP_SELF?page = $page\">Next 10 Records</a>";
         }else if( $left_rec < $record_limit ) {
            $last = $page - 2;
            echo "<a href = \"$_PHP_SELF?page = $last\">Last 10 Records</a>";
         }
         mysql_close($db_conn);
      ?>
   </body>
</html>

People are also reading:

Author: Aashiya Mittal

A computer science engineer with great ability and understanding about programming languages. have been in the writing world since the last three years and creating valuable content for all in all possible fields.

Leave a Reply

Your email address will not be published.