Prima di tutto conti quanti record sono presenti e stabilisci quanti ne vuoi per pagina:
Codice PHP:
#PAGINAZIONE
include("connessione.php");
$get_tot_record = "SELECT COUNT(ID) AS tot_record FROM tabella";
$result_tot = mysql_query($get_tot_record, $conn);
$row_tot = mysql_fetch_array($result_tot);
$tot_record = $row_tot[tot_record];
mysql_close($conn);
$per_page = 20;
$tot_pages = ceil($tot_record / $per_page);
$current_page = (!$_GET['page']) ? 1 : (int)$_GET['page'];
$primo = ($current_page - 1) * $per_page;
include("paginazione.php");
#FINE PAGINAZIONE
Il file paginazione.php:
Codice PHP:
$paginazione = "Pagina ";
for($i = 1; $i <= $tot_pages; $i++) {
if($i == $current_page) {
$paginazione .= " ". $i;
}else{
$paginazione .= " <a href=\"?page=$i\" title=\"Vai alla pagina $i\">$i</a>";
}
}
Poi effettui la query che restituisce i record sulla pagina:
Codice PHP:
$get_data = "SELECT * FROM tabella LIMIT " . $primo . ", " . $per_page;
Alla fine dei risultati richiami la paginazione:
Codice PHP:
#PAGINAZIONE
if ($tot_record > $per_page){
print ("<tr>");
print ("<td class=\"record_right\" colspan=\"4">");
print $paginazione;
print ("</td>");
print ("</tr>");
}
Nell'esempio i risultati sono messi in una tabella e la paginazione in una cella allineata a destra.