PHP: Simple pagination
Simple PHP pagination uses a Twitter Bootstrap layout
$targetpage = "search.php"; $limit = 50; //Records per page $total_pages = $total_count; //Total number of the records to paginate $stages = 3; $page = mysql_escape_string($_REQUEST['page']); if ($page) { $start = ($page - 1) * $limit; } else { $start = 0; } if ($page == 0) { $page = 1; } $prev = $page - 1; $next = $page + 1; $lastpage = ceil($total_pages / $limit); $LastPagem1 = $lastpage - 1; $paginate = ''; if ($lastpage > 1) { $paginate .= ""; } echo $paginate;"; if ($page > 1) { $paginate.= "
- «
"; } else { $paginate.= "- «
"; } if ($lastpage < 7 + ($stages * 2)) { for ($counter = 1; $counter <= $lastpage; $counter++) { if ($counter == $page) { $paginate.= "- $counter
"; } else { $paginate.= "- $counter
"; } } } elseif ($lastpage > 5 + ($stages * 2)) { if ($page < 1 + ($stages * 2)) { for ($counter = 1; $counter < 4 + ($stages * 2); $counter++) { if ($counter == $page) { $paginate.= "- $counter
"; } else { $paginate.= "- $counter
"; } } $paginate.= "- ...
"; $paginate.= "- $LastPagem1
"; $paginate.= "- $lastpage
"; } elseif ($lastpage - ($stages * 2) > $page && $page > ($stages * 2)) { $paginate.= "- 1
"; $paginate.= "- 2
"; $paginate.= "- ...
"; for ($counter = $page - $stages; $counter <= $page + $stages; $counter++) { if ($counter == $page) { $paginate.= "- $counter
"; } else { $paginate.= "- $counter
- "; } } $paginate.= "
- ...
"; $paginate.= "- $LastPagem1
"; $paginate.= "- $lastpage
"; } else { $paginate.= "- 1
"; $paginate.= "- 2
"; $paginate.= "- ...
"; for ($counter = $lastpage - (2 + ($stages * 2)); $counter <= $lastpage; $counter++) { if ($counter == $page) { $paginate.= "- $counter
"; } else { $paginate.= "- $counter
"; } } } } if ($page < $counter - 1) { $paginate.= "- »
"; } else { $paginate.= "- »
"; } $paginate.= "
Tag: PHP, Pagination, Bootstrap
0 Comments