Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $db_username = 'root'; // Your MYSQL Username.
- $db_password = ''; // Your MYSQL Password.
- $db_name = 'database_name_here'; // Your Database name.
- $db_host = 'localhost';
- $conDB = mysqli_connect($db_host, $db_username, $db_password,$db_name)or die('Error: Could not connect to database.');
- // Pagination Function
- function pagination($query,$per_page=10,$page=1,$url='?'){
- global $conDB;
- $query = "SELECT COUNT(*) as `num` FROM {$query}";
- $row = mysqli_fetch_array(mysqli_query($conDB,$query));
- $total = $row['num'];
- $adjacents = "2";
- $prevlabel = "‹ Prev";
- $nextlabel = "Next ›";
- $lastlabel = "Last ››";
- $page = ($page == 0 ? 1 : $page);
- $start = ($page - 1) * $per_page;
- $prev = $page - 1;
- $next = $page + 1;
- $lastpage = ceil($total/$per_page);
- $lpm1 = $lastpage - 1; // //last page minus 1
- $pagination = "";
- if($lastpage > 1){
- $pagination .= "<ul class='pagination'>";
- $pagination .= "<li class='page_info'>Page {$page} of {$lastpage}</li>";
- if ($page > 1) $pagination.= "<li><a href='{$url}page={$prev}'>{$prevlabel}</a></li>";
- if ($lastpage < 7 + ($adjacents * 2)){
- for ($counter = 1; $counter <= $lastpage; $counter++){
- if ($counter == $page)
- $pagination.= "<li><a class='current'>{$counter}</a></li>";
- else
- $pagination.= "<li><a href='{$url}page={$counter}'>{$counter}</a></li>";
- }
- } elseif($lastpage > 5 + ($adjacents * 2)){
- if($page < 1 + ($adjacents * 2)) {
- for ($counter = 1; $counter < 4 + ($adjacents * 2); $counter++){
- if ($counter == $page)
- $pagination.= "<li><a class='current'>{$counter}</a></li>";
- else
- $pagination.= "<li><a href='{$url}page={$counter}'>{$counter}</a></li>";
- }
- $pagination.= "<li class='dot'>...</li>";
- $pagination.= "<li><a href='{$url}page={$lpm1}'>{$lpm1}</a></li>";
- $pagination.= "<li><a href='{$url}page={$lastpage}'>{$lastpage}</a></li>";
- } elseif($lastpage - ($adjacents * 2) > $page && $page > ($adjacents * 2)) {
- $pagination.= "<li><a href='{$url}page=1'>1</a></li>";
- $pagination.= "<li><a href='{$url}page=2'>2</a></li>";
- $pagination.= "<li class='dot'>...</li>";
- for ($counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++) {
- if ($counter == $page)
- $pagination.= "<li><a class='current'>{$counter}</a></li>";
- else
- $pagination.= "<li><a href='{$url}page={$counter}'>{$counter}</a></li>";
- }
- $pagination.= "<li class='dot'>..</li>";
- $pagination.= "<li><a href='{$url}page={$lpm1}'>{$lpm1}</a></li>";
- $pagination.= "<li><a href='{$url}page={$lastpage}'>{$lastpage}</a></li>";
- } else {
- $pagination.= "<li><a href='{$url}page=1'>1</a></li>";
- $pagination.= "<li><a href='{$url}page=2'>2</a></li>";
- $pagination.= "<li class='dot'>..</li>";
- for ($counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++) {
- if ($counter == $page)
- $pagination.= "<li><a class='current'>{$counter}</a></li>";
- else
- $pagination.= "<li><a href='{$url}page={$counter}'>{$counter}</a></li>";
- }
- }
- }
- if ($page < $counter - 1) {
- $pagination.= "<li><a href='{$url}page={$next}'>{$nextlabel}</a></li>";
- $pagination.= "<li><a href='{$url}page=$lastpage'>{$lastlabel}</a></li>";
- }
- $pagination.= "</ul>";
- }
- return $pagination;
- }
- ?>
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta charset="utf-8">
- <title>Pagination - OTallu.com</title>
- <style type="text/css">
- /* For this page only */
- body { font-family:Arial, Helvetica, sans-serif; font-size:13px; }
- .wrap { text-align:center; line-height:21px; padding:20px; }
- /* For pagination function. */
- ul.pagination {
- text-align:center;
- color:#829994;
- }
- ul.pagination li {
- display:inline;
- padding:0 3px;
- }
- ul.pagination a {
- color:#0d7963;
- display:inline-block;
- padding:5px 10px;
- border:1px solid #cde0dc;
- text-decoration:none;
- }
- ul.pagination a:hover,
- ul.pagination a.current {
- background:#0d7963;
- color:#fff;
- }
- </style>
- </head>
- <body>
- <div class="wrap">
- <?php
- $page = (int)(!isset($_GET["page"]) ? 1 : $_GET["page"]);
- if ($page <= 0) $page = 1;
- $per_page = 10; // Set how many records do you want to display per page.
- $startpoint = ($page * $per_page) - $per_page;
- $statement = "`records` ORDER BY `id` ASC"; // Change `records` according to your table name.
- $results = mysqli_query($conDB,"SELECT * FROM {$statement} LIMIT {$startpoint} , {$per_page}");
- if (mysqli_num_rows($results) != 0) {
- // displaying records.
- while ($row = mysqli_fetch_array($results)) {
- echo $row['name'] . '<br>';
- }
- } else {
- echo "No records are found.";
- }
- // displaying paginaiton.
- echo pagination($statement,$per_page,$page,$url='?');
- ?>
- </div><!-- .wrap -->
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement