Foros del Web » Programando para Internet » PHP »

Problema con enumeracion ranki ng

Estas en el tema de Problema con enumeracion ranki ng en el foro de PHP en Foros del Web. Hola gente, que tal? Miren h ice un ranking y puse puestos, me q uedo algo asi: Código PHP: <?php $puesto  =  1 ; while( ...
  #1 (permalink)  
Antiguo 21/02/2008, 09:27
 
Fecha de Ingreso: diciembre-2007
Mensajes: 50
Antigüedad: 16 años, 4 meses
Puntos: 0
Problema con enumeracion ranki ng

Hola gente, que tal?
Miren h ice un ranking y puse puestos, me q uedo algo asi:

Código PHP:
<?php
$puesto 
1;
while(
$row mysql_fetch_array($result))
{
echo 
'
<td align="center">'
.$puesto++.'&nbsp</td>
<td align="center">'
.$nombre.'$nbsp</td>
'
;
//etc
//etc
//etc
}
El problema es que yo pagine el ranking cada 25 puestos, hasta aca todo bien, salio perfecto salvo por un detalle mayor:
Cuando voy a la pagina 2, 3, 4, la q sea, enumera desde el puesto 1 y no desde el puesto que venia anteriormente.. Alguien me da una mano?
Gracias!

ejemplo:

pagina 1:

# nombre
1 jose
2 mario
3 jose luis
..
..
24 francisco
25 javier

Pagina 2:
# nombre
1 gabriel
2 federico
3 teoclocio
  #2 (permalink)  
Antiguo 21/02/2008, 09:36
Avatar de popobcn
Moderador
 
Fecha de Ingreso: noviembre-2006
Ubicación: Cerdanyola del Vallès
Mensajes: 3.892
Antigüedad: 17 años, 5 meses
Puntos: 1142
Re: Problema con enumeracion ranki ng

El problema esta en la declaración del contenido de la variable $puesto ya que cada vez que páginas la igualas nuevamente a 1.

Lo que tendrias que hacer, es añadir una variable más a los enlaces del sistema de paginación que tienes actualmente con el fin de que se conserve la númeracion:

Cita:
ranking.php?pagina=$pagina&pos=$posicion
En el inicio de la página tendrias que cambiar el código existente por algo así:

Cita:
<?
$posicion = $_GET['pos'];
if($posicion!=""){
$posicion++;
}else{
$posicion=1;
}
Saludos
  #3 (permalink)  
Antiguo 21/02/2008, 09:37
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Problema con enumeracion ranki ng

Deberías de guardar el ranking en tu base de datos, asi evitas ese problema ya que el ranking te lo calcula por cada pagina, y si lo guardas en tu BD, no tendrás el problema.

Otra opcion es que guardes el ultimo numero en una variable de sesión y la leas cada que paginas para que inicie desde ese numero, algo así:
Código PHP:
session_start();
if( isset( 
$_SESSION['ultimoNum'] ) ) {
         
$puesto $_SESSION['ultimoNum'];
} else {
         
$puesto 1;
}

while(
$row mysql_fetch_array($result))
{
echo 
'
<td align="center">'
.$puesto++.'&nbsp</td>
<td align="center">'
.$nombre.'$nbsp</td>
'
;
//etc
//etc
//etc
}

$_SESSION['ultimoNum'] = $puesto
Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:20.