Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- include 'includes/connection.php';
- $per_page = 8;
- $pages_query = mysql_query("SELECT COUNT(`id`) FROM `products`");
- $pages = ceil(mysql_result($pages_query, 0) / $per_page);
- $page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;
- $start = ($page - 1) * $per_page;
- $query = mysql_query("SELECT `name` FROM `products` LIMIT $start, $per_page");
- while ($query_row = mysql_fetch_assoc($query))
- {
- echo '<p>' . $query_row['name'] . '</p>';
- }
- // If the requested page is less than 1 or more than the total number of pages
- // redirect to the first page
- if($pages < 1 || $page > $pages)
- {
- header('Location: ?page=1');
- // end execution of the rest of this script
- // it will restart execution after redirection
- exit;
- }
- // If more than one page, show pagination links
- if($pages > 1)
- {
- $html = array();
- $html[] = '<strong>';
- // if you're on a page greater than 1, show a previous link
- $html[] = (($page > 1) ? '<a href="?page=' . ($page - 1) . '">Previous</a> ' : 'Previous');
- // First page link
- $pageFirst = '<a href="?page=1">1</a>';
- $html[] = (($page == 1) ? "</strong>{$pageFirst}<strong>" : $pageFirst);
- if ($pages > 6)
- {
- $start_cnt = min(max(1, $page - (6 - 1)), $pages - 6);
- $end_cnt = max(min($pages, $page + 4), 8);
- $html[] = ($start_cnt > 1) ? '...' : ' ';
- for ($i = $start_cnt + 1; $i < $end_cnt; $i++)
- {
- $html[] = ($i == $page) ? '</strong><a href="?page=' . $i . '">' . $i . '</a><strong>' : '<a href="?page=' . $i . '">' . $i . '</a>';
- if ($i < $end_cnt - 1)
- {
- $html[] = ' ';
- }
- }
- $html []= ($end_cnt < $pages) ? '...' : ' ';
- }
- else
- {
- $html[] = ' ';
- for ($i = 2; $i < $pages; $i++)
- {
- $html[] = ($i == $page) ? '</strong><a href="?page=' . $i . '">' . $i . '</a><strong>' : '<a href="?page=' . $i . '">' . $i . '</a>';
- if ($i < $pages)
- {
- $html[] = ' ';
- }
- }
- }
- // last page link
- $pageLast = '<a href="?page=' . $pages . '">' . $pages . '</a>';
- $html[] = (($page == $pages) ? "</strong>{$pageLast}<strong>" : $pageLast);
- // Show next page link if you're on a page less than the total number of pages
- $html[] = ($page < $pages) ? ' <a href="?page=' . ($page + 1) . '">Next</a>' : 'Next';
- // If you're not on the last page, show a next link
- $html[] = '</strong>';
- }
- else
- {
- // show page number 1, no link.
- $html[] = '<strong>1</strong>';
- }
- echo implode('', $html);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement