je de nada, veo que no muchos entran a esta parte del foro.
cuantos registros te carga ? podrias paginarlo, aca te dejo una funcion para armar el paginado.
Código PHP:
function paginacion_sql($perPage, &$page, &$from, $extraVars, $table, $sqlWhere, $title, $idField = "", $showPages = TRUE) {
// OJO: $page y $from se pasa por referencia
if (!$page) { $page = 1; }
if ($page < 1) { $page = 1; }
if ($title) { $title = $title . ": "; }
if ($extraVars) { $extraVars = "&" . $extraVars; }
if (!$idField) { $idField = "id"; }
$from = ($page - 1) * $perPage;
$sql = "SELECT count(DISTINCT $idField) as n_registros FROM $table $sqlWhere";
$result = mysql_query($sql);
if ($line = mysql_fetch_array($result)) {
$cuantos = $line[n_registros];
$pages = ceil($cuantos / $perPage);
if ($page > 1) {
$previous = "<a href=\"" . $_SERVER['PHP_SELF'] . "?page=" . ($page - 1)
. "$extraVars\"><b>< Anterior</b></a> | ";
$desde = $perPage * ($page - 1) + 1;
}else{
$desde = 1;
}
if ($desde == $cuantos OR $cuantos < $perPage + $desde) {
$hasta = $cuantos;
}else{
$next = " | <a href=\"" . $_SERVER['PHP_SELF'] . "?page=" . ($page + 1)
. "$extraVars\"><b>Siguiente ></b></a>";
$hasta = $perPage * $page;
}
if ($pages > 0) {
$header = "<div>$previous$title<b>$desde-$hasta</b> de <b>$cuantos</b>$next</div>";
if ($showPages) {
$intermedias = "<div>Paginas: ";
for ($n = 1; $n <= $pages; $n++){
if ($n == $page){
$intermedias .= "$sep<b>$n</b>";
}else{
$intermedias .= "$sep<a href=\"" . $_SERVER['PHP_SELF'] . "?page=$n$extraVars\">$n</a>";
}
$sep = " ";
}
$intermedias .= "</div>";
}
}
//$page = ($page - 1) * $perPage;
}
$header .= $intermedias;
return $header;
}
para usar la paginacion
Código PHP:
perPage = 100;
$page = $_GET[page];
$paging = paginacion3($perPage, $page, $from,
"variables_get",
"tabla",
" WHERE campo_de_la_tabla = $variable_de_filtro",
"nombre que aparece en la paginacion",
"id_unico_de_la_tabla");
mysql_query("SET NAMES utf8");
$sql = "select * from tabla WHERE # EL MISMO QUE EN LA PAGINACION
";
despues del while que termina la recorrida de registros de tu string SQL pones esto que es lo que te muestra la paginacion
Código PHP:
<div id="pages" align="center" ><?=$paging?></div>
para darle un formato css fijate que tenes el div con id="pages"
podrias hacer algo como lo siguiente
Código HTML:
<style type="text/css">
div#pages {
padding: 6px;
font-size: 10px;
text-align: center;
}
div#pages a {
padding: 6px;
font-size: 10px;
text-align: center;
}
div#pages a:hover {
padding: 6px;
font-size: 10px;
text-align: center;
}
</style>
salu2 y espero te sirva