
03/05/2005, 20:34
|
 | | | Fecha de Ingreso: enero-2002 Ubicación: Lima
Mensajes: 1.302
Antigüedad: 23 años, 2 meses Puntos: 3 | |
mira si usas el MySQL te va a ser muy fácil hacer eso.. el MySQL tiene para poner límites... x ejemplo quieres mostrar solo dos registros de lo que estás buscando es asi:
SELECT * FROM articulos WHERE id=1 limit 0,2
después de limit pones desde donde quieres empezar (se empieza desde cero para tener el primer registro).. y después del coma la cantidad de registros
entonces cómo puedes hacer esta gracia? asi:
<?php
//primero recoges en qué página estás:
$pag = (!isset($_GET['pag'])) ? 1: $_GET['pag'];
$pag = $pag - 1;
if ($pag < 0){
$pag = 0;
}
$mostrar = 2; //aquí pones cuantos registros quieres mostrar x cada página
//ahora necesitamos saber cuantos registros hay:
$str = "SELECT count(*) FROM articulos WHERE id=1"
$contador = mysql_query($str, $conn);
$cont=mysql_fetch_array($contador);
$total = $cont["numero"];
$cant_paginas = ceil($total/$cuenta);
if ($pag >= $cant_paginas){
$pag = $cant_paginas - 1;
}
$strSQL = "SELECT * FROM articulos WHERE id=1 limit ".$pag*$mostrar.", ".$mostrar;
?>
Ahora para poner los links para que se pasee:
<?php
if ($cant_paginas > 1) {
$pag = $pag + 1;
if ($pag > 1) { ?>
<a class="mas" href="catalogo.php?pag=<?php echo($pag - 1); ?>">
<?php if($idioma == 0){ ?>
Anterior
<?php }else{ ?>
Back
<?php } ?>
</a>
<?php
}
for($i=1;$i<$cant_paginas+1;$i++){
if ($i == $pag){
echo("<font color=#666666 size=1 face=verdana>".$i."</font> ");
}else{
?>
<a class="mas" href="catalogo.php?pag=<?php echo($i); ?>"><?php echo($i); ?></a>
<?php
}
}
if ($pag < $cant_paginas){
?>
<a class="mas" href="catalogo.php?pag=<?php echo($pag + 1); ?>">
<?php if($idioma == 0){ ?>
Siguiente
<?php }else{ ?>
Next
<?php } ?>
</a>
<?php
}
}
?>
No lo he revisado.. espero te sirva.. me avisas, no sé si ésta es la mejor forma.. como te digo.. no conozco mucho de PHP pero sé la lógica xq sé ASP y soy desarrollador
__________________ Yo si sé lo que es trabajar duro, porque lo he visto. |