Mi rispondo da solo xkè ho trovato la soluzione, quindi nel caso a qualcuno servisse, la metto a disposizione di tutti.
$result = mysql_query("SELECT COUNT(id) FROM tabella;");
$numero = mysql_fetch_row($result);
$tot_righe = $numero[0];
$max_pagina = 5;
$totale_pagine = ceil($tot_righe / $max_pagina);
if (!isset($_GET['page'])) {
$current_page = 1;
} else {
$current_page = (int)$_GET['page'];
}
$primo = ($current_page - 1) * $max_pagina;
Questa parte di codice mi consente di sapere quante pagine sono necessarie per visualizzare tutti gli elementi e per effettuare la query seguente di estrazione dati dal database.
$query_sel="SELECT * FROM tabella ORDER BY campo LIMIT $primo, $max_pagina;";
Qui ora fate il vostro ciclo while o for (per la visualizzazione dei dati), come vi trovate meglio.
Poi create uno spazio, una tabella, un div, quello che volete dove appaia lo spaginamento, che è la seguente porzione di codice:
if($totale_pagine != 0) {
$inizio=ceil($current_page/10)-1;
if ((($inizio*10)+1)>10) {
echo "<a href=\"$PHP_SELF?page=".(($inizio*10)+1-10)."\"><<</a> ";
}
for($iPages=(($inizio*10)+1); (($iPages<=$totale_pagine) && ($iPages<=(($inizio*10)+10))); $iPages++ ) {
if($iPages==$current_page) { echo $iPages.""; //pagina corrente
} else {
echo "<a href=\"".$PHP_SELF."?page=".$iPages."\" class=\"spag\">".$iPages."</a>";
}
}
if ($totale_pagine >= ((($inizio+1)*10)+1) ) {
echo "<a href=\"$PHP_SELF?page=".($iPages)."\">>></a>";
}
}
Se avete qualche problema contattatemi pure.
Ciao a presto