Bueno... ahora le hice un nuevo cambio... para que no muestre los números de página empezando desde cero sino desde uno.
Código PHP:
<html>
<head>
<title>Páginación de resultados</title>
</head>
<body bgcolor=#FFFFFF>
<?
// Datos de conexión a la base
$servidor="localhost";
$usuario="tu_user";
$password="tu_password";
$base="tu_base";
$con = mysql_connect($servidor,$usuario,$password) or die (mysql_error());
mysql_select_db($base,$con) or die (mysql_error());
if (!isset($_GET['pg'])){
$pg = 1; // $pg es la pagina actual
}else{
$pg=$_GET['pg'];
}
$cantidad=5; // cantidad de resultados por página
$inicial = ($pg-1) * $cantidad;
$pegar = "SELECT * FROM tabla ORDER BY titulo LIMIT $inicial,$cantidad";
$cad = mysql_query($pegar) or die (mysql_error());
$contar = "SELECT * FROM tabla ORDER BY titulo";
$contarok= mysql_query($contar);
$total_records = mysql_num_rows($contarok);
$pages = ceil($total_records / $cantidad);
// Imprimiendo los resultados
while($array = mysql_fetch_array($cad)) {
echo $array['titulo']."<br>";
}
// Cerramos la conexión a la base
$con=mysql_close($con);
// Creando los enlaces de paginación
echo "<p>";
if ($pg <> 1){
$url = $pg - 1;
echo "<a href='paginar.php?pg=".$url."'>« Anterior</a> ";
}else {
echo " ";
}
for ($i = 1; $i<=$pages; $i++) {
if ($i == $pg) {
echo "<font face=Arial size=2 color=ff0000><b> $i </b></font>";
}else{
echo "<a href='".$_SERVER['PHP_SELF']."?pg=".$i."'>".$i."</a> ";
}
}
if ($pg < $pages) {
$url = $pg + 1;
echo "<a href='".$_SERVER['PHP_SELF']."?pg=".$url."'>Siguiente »</a>";
}else {
echo " ";
}
echo "</p>";
?>
</body>
</html>
Saludos