espero este codigo te sirva
paginacion.php
Código PHP:
<?
//conecto con la base de datos
$conn = mysql_connect("localhost","root","contraseña");
mysql_select_db("basededatos",$conn);
$registros = 2;
if (!$pagina) {
$inicio = 0;
$pagina = 1;
}
else {
$inicio = ($pagina - 1) * $registros;
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title></title>
</head>
<body>
<?
$resultados1 = mysql_query("SELECT id FROM noticias ",$conn);
$total_registros = mysql_num_rows($resultados1);
$resultados = mysql_query("SELECT * FROM noticias LIMIT $inicio, $registros",$conn);
$total_paginas = ceil($total_registros / $registros);
$num_filas = mysql_num_rows($resultados1);
if($num_filas!=0){
?>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#111111" id="AutoNumber1" style="border-collapse: collapse">
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> <?
//muestro los datos en un bucle
$num_fila = 0;
while ($damefila=mysql_fetch_object($resultados))
{
?>
<p style="margin-top: 0; margin-bottom: 0">
<br>
<?
$total_registros++;
} //termina el bucle while
}
else {
echo "<font color='darkgray'>(sin resultados)</font>";
}
mysql_free_result($resultados);
if($total_registros) {
echo "<center>";
if(($pagina - 1) > 0) {
echo "<a href='paginacion.php?pagina=".($pagina-1)."'>< Anterior</a> ";
}
for ($i=1; $i<=$total_paginas; $i++){
if ($pagina == $i) {
echo "<b>".$pagina."</b> ";
} else {
echo "<a href='paginacion.php?pagina=$i'>$i</a> ";
}
}
if(($pagina + 1)<=$total_paginas) {
echo " <a href='paginacion.php?pagina=".($pagina+1)."'>Siguiente ></a>";
}
echo "</center>";
}?></td></tr></table>
<? mysql_close($conn);?>
</body>
</html>