Search code examples
phpmysqlpaginationlimit

Basic pagination


I am not a well-versed programmer so i don't want to use a complicated pagination. Is there an alternative to using a pagination like in my queries can i limit them to say 20 results and then if their are more than 20 results i can show a "next" button and then that button will further load the next results??

I only want "next" to show if there are 20> results? Any help will be appreciated. Thanks.

Code:

  $query="SELECT * FROM actresses where actress_id = '$actressid' and production_full_name LIKE '%$q%'";  
       $result=mysql_query($query);

        $num=mysql_numrows($result);

        mysql_close();

          echo "";

       $i=0;
         while ($i < $num) {

         $1=mysql_result($result,$i,"production_full_name");
           $2=mysql_result($result,$i,"production_id");
     $3=mysql_result($result,$i,"actress");


          echo "<br><div id=linkcontain><a id=slink   href=$data/actress.php?id=$2>$3</a><div id=production>$1</div></div>";

            echo "";

            $i++;
            }

Solution

  • You could add a limit to your query.

    $lower_limit = $results_per_page * $page_number;
    $upper_limit = $lower_limit + $results_per_page
    
    ..and production_full_name LIKE '%$q%' LIMIT $lower_limit, $upper_limit
    

    Then make a conditional "next page" link

    if ($upper_limit > 20) echo '<a href="{page url}?page_number='.($page_number+1).'">Next</a>;