$page_sql = "SELECT count(`id`) as `no_records` FROM `productmain` WHERE `category_id`=:category_id ;"; if ($main_id) { $page_sql = "SELECT count(`id`) as `no_records` FROM `productmain` WHERE `main_cat`=:category_id ;"; } $page_stmt = $conn->prepare($page_sql); $page_stmt->bindParam(':category_id', $id, PDO::PARAM_INT); $page_result = $page_stmt->execute(); $noData = $page_stmt->fetch(PDO::FETCH_ASSOC); $no_records = $noData['no_records']; $per_records_page = 9; $total_no_pages = ceil($no_records / $per_records_page); if (!isset($_GET['page'])) { $page = 1; } else { $page = (int)input($_GET['page']); // Cast to int for PHP 8+ } $offset = ($page - 1) * $per_records_page; $previous_page = $page - 1; $next_page = $page + 1; $adjacents = "2"; $total_no_of_pages = ceil($no_records / $per_records_page); $limit = 2; $startRange = max(1, $page - $limit); $endRange = min($total_no_of_pages, $page + $limit); $second_last = $total_no_of_pages - 1; // total page minus 1 $start_from = ($page - 1) * $per_records_page; ?>