ciao,
non so se hai risolto, pero' controlla la variabile $step hai messo 2 invece di 20.

if(!isset($start) or $start<0)
$start=0;
$step=20;


credo sia questo il problema.

Almeno tu riesci a vederli a me da errori sulla variabile tot

Notice: Use of undefined constant tot - assumed 'tot' in e:\programmi\easyphp1-8\www\prova\all.php on line 42

Notice: Use of undefined constant tot - assumed 'tot' in e:\programmi\easyphp1-8\www\prova\all.php on line 56

questo è il mio script (inserisco le righe incriminate(la prima è la riga 36):

<?
$query = "SELECT count(*) AS tot FROM clienti";

$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);

$pages = intval(($row[tot]-1) / $step)+1;

?>
<td width=60% align=center>
<?
for ($i=0; $i<$pages AND $i<20; $i++)
{ $start_page = $i * $step;
echo "<a href=all.php?start=$start_page>" . ($i+1) . "</a> ";
}
?>
</td>

<td width=20%>
<?
if ($start + $step < $row[tot])
{ $start_next = $start + $step;
echo "<a href=all.php?start=$start_next>successivi</a>";
}
?>

grazie anticipatamente