What are the potential pitfalls of always retrieving all database records in PHP when implementing pagination?

Retrieving all database records in PHP when implementing pagination can lead to performance issues, as it requires fetching a large amount of data from the database every time. To solve this issue, you can limit the number of records retrieved from the database based on the pagination parameters, such as the page number and the number of records per page.

// Pagination parameters
$page = isset($_GET['page']) ? $_GET['page'] : 1;
$records_per_page = 10;
$offset = ($page - 1) * $records_per_page;

// Query to retrieve paginated records
$query = "SELECT * FROM table_name LIMIT $offset, $records_per_page";
$result = mysqli_query($connection, $query);

// Fetching and displaying records
while($row = mysqli_fetch_assoc($result)) {
    // Display record data
}