How To Pagination In Php

When it comes to displaying large amounts of data on a web page, pagination becomes an essential feature. Rather than displaying all of the data on one page, pagination allows you to break up the data into smaller chunks, making it easier for users to navigate and find what they’re looking for. In this tutorial, we’ll walk you through how to implement pagination in PHP.

Step 1: Connect to the Database

In order to implement pagination, you’ll first need to connect to your database. For the purpose of this tutorial, we’ll use MySQL as our database of choice. You can connect to your MySQL database using the following code:

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database_name";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);

Step 2: Retrieve Data and Determine the Number of Pages

Next, you’ll need to retrieve the data from your database and determine the total number of pages required for pagination. To do this, you’ll first need to decide how many records should be displayed per page (in this example, we’ll use 10).

$records_per_page = 10;
$sql = "SELECT COUNT(*) FROM table_name";
$result = $conn->query($sql);
$row = $result->fetch_row();
$total_records = $row[0];
$total_pages = ceil($total_records / $records_per_page);

Step 3: Display the Data and Pagination Links

Now that we have our total number of pages, we can display the relevant data for the current page, as well as the pagination links. First, we’ll determine the current page:

$current_page = (isset($_GET['page']) && is_numeric($_GET['page'])) ? $_GET['page'] : 1;

Next, we’ll retrieve the data for the current page:

$start_from = ($current_page - 1) * $records_per_page;
$sql = "SELECT * FROM table_name LIMIT $start_from, $records_per_page";
$result = $conn->query($sql);

Then, we’ll display the data on our web page:

while ($row = $result->fetch_assoc()) {
echo $row['column_name_1'] . ' ' . $row['column_name_2'] . '

Finally, we’ll display the pagination links for navigating between pages:

for ($i = 1; $i <= $total_pages; $i++) {
echo '' . $i . ' ';


And there you have it! You’ve successfully implemented pagination in PHP. This tutorial has provided you with the basic knowledge to display a large amount of data on your web page in a more user-friendly manner. Of course, you can customize the appearance and functionality of your pagination system to better suit your needs, but this tutorial should serve as a good starting point. Happy coding!