Ahora si voy a la question.
Tengo la siguiente inquietud, He conseguido un codigo para poder paginar los resultados encontrados en una consulta, que me ha sido de bastante utilidad y lo he modificado para uso personal, ahora lo que quisiera hacer es poder definir el numero de enlaces a mostrar en la pagina (porque cuando tengo 100 registros los numeros de las paginas mostradas son muchos y no queda prolijo)
hay alguna forma de poder mejorar este tema.
A continuacion les muestro el codigo que yo tengo. Gracias
Código:
<? // aqui la coneccion // configura algunas variables $Pagina = $_GET['Pagina']; if ($Pagina <= 0) $Pagina = 1; $Tabla = "nombre tabla"; $PK = "id"; $CampoOrden = $PK; // Campo de orden predeterminado $TipoOrden = 'DESC'; // Tipo de orden predeterminado $RegPorPag = 5; // Cantidad de registros por página $PrimReg = ($Pagina - 1) * $RegPorPag; $sqlCuenta = "SELECT COUNT($PK) FROM $Tabla"; $sqlDatos = "SELECT * FROM $Tabla ORDER BY $CampoOrden $TipoOrden LIMIT $PrimReg, $RegPorPag"; // Cuento la cantidad de registros sin LIMIT $result = @mysql_query($sqlCuenta); $CantReg = mysql_result($result,0, 0); // Ejecuto la consulta $result = @mysql_query($sqlDatos); //establesco si hay o no resultados if ($CantReg<1) echo "<p>No hay resultados.</p>"; if (mysql_num_rows($result)){ ?> Se <? if ($CantReg>1) echo "encontraron"; ?> <?=$CantReg?> <? if ($CantReg>1) echo "resultados"; ?> <!-- Paginacion --> <? if (ceil($CantReg/$RegPorPag) > 1){ echo "<p>"; if ($Pagina > 1) echo "<a href=\"{$_SERVER['PHP_SELF']}?Pagina=". ($Pagina-1) ."\">Anterior</a>"; if ($Pagina > 1 && $Pagina<ceil($CantReg/$RegPorPag)) echo " - "; if ($Pagina<ceil($CantReg/$RegPorPag)) echo "<a href=\"{$_SERVER['PHP_SELF']}?Pagina=". ($Pagina+1) ."\">Siguiente</a>"; echo " | Páginas: "; $strPaginas = ''; for($i=1;$i<=ceil($CantReg/$RegPorPag);$i++){ if ($i == $Pagina) $strPaginas .= "<b>"; else @$strPaginas .= "<a href=\"{$_SERVER['PHP_SELF']}?Pagina=". $i ."\">"; $strPaginas .= $i; if ($i == $Pagina) $strPaginas .= "</b> - "; else $strPaginas .= "</a> - "; } echo substr($strPaginas, 0, strlen($strPaginas) - 3); } ?> <!-- Fin Paginacion --> <? //Leemos y escribimos los registros de la página actual while($rs = mysql_fetch_array($result)){ echo $rs['id']."<br />"; } //cierro la coneccion mysql_close($link); } ?>