Foros del Web » Programando para Internet » PHP »

Ranking con historial

Estas en el tema de Ranking con historial en el foro de PHP en Foros del Web. Buenas foreros, una vez mas recurro a la sabiduria colectiva para resolver dudas :D Ésta vez quisiera que alguien me echase un cable dandome alguna ...
  #1 (permalink)  
Antiguo 02/06/2011, 03:38
Avatar de bNd170  
Fecha de Ingreso: agosto-2009
Ubicación: $this->setLocation('Valencia', 'Spain');
Mensajes: 365
Antigüedad: 14 años, 7 meses
Puntos: 13
Ranking con historial

Buenas foreros, una vez mas recurro a la sabiduria colectiva para resolver dudas :D

Ésta vez quisiera que alguien me echase un cable dandome alguna idea de como abarcar mi proyecto de la manera más óptima posible.

Os explico, estoy tratando de crear un ranking de equipos, los cuales meteré yo a mano con un formulario, el ranking se regirá por un mero dato, los puntos. Hasta aqui todo muy sencillo pero además quiero añadirle una especie de historial, es decir, si por ejemplo, hoy el equipo que ocupa la tercera plaza suma 50 puntos más y supera al segundo clasificado, que se refleje, es decir algun método para tener un registro de que posicion ocupa actualmente el equipo y cual fué su ultima posición.

No se me ocurre ninguna forma sencilla y eficaz.

P.D.: NO PIDO CODIGOS, SOLO IDEAS.
  #2 (permalink)  
Antiguo 02/06/2011, 07:23
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Ranking con historial

una pregunta, los puntajes son acumulativos por día o se reinician cada día?

DIA 1
Equipo A : 100
Equipo B : 150

DIA 2
Equipo A : (70) ... o ... (100+70=170)
Equipo B : (120) ... o ... (150+120=270)

pregunto por que se me ocurre una solución posible bastante fácil de implementar donde no tendrás que complicarte haciendo tablas temporales ni registros adicionales :)
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #3 (permalink)  
Antiguo 02/06/2011, 07:28
Avatar de rikardoz  
Fecha de Ingreso: abril-2011
Ubicación: En mi casa
Mensajes: 165
Antigüedad: 13 años
Puntos: 46
Respuesta: Ranking con historial

porque simplemente no creas otra tabla que se llame historial
y guarde tambien los puntos anterioes
osea
50 PUNTOS, TIME, DATE, EQUIPO
asi tienes cuanto puntos gana cada equipo y otra tabla principal que tiene su total
o simplemente sumas la tabla puntos?
__________________
Agregadecer no cuesta nada O SI?
  #4 (permalink)  
Antiguo 02/06/2011, 08:19
Avatar de bNd170  
Fecha de Ingreso: agosto-2009
Ubicación: $this->setLocation('Valencia', 'Spain');
Mensajes: 365
Antigüedad: 14 años, 7 meses
Puntos: 13
Respuesta: Ranking con historial

Las puntuaciones son permanentes, las edito yo cada evento de manera manual con un formulario de editaje.

rikardoz, tu solucion no me vale, es un ranking simple, unicamente quiero que tenga ese plus para hacerlo mas atractivo.
  #5 (permalink)  
Antiguo 02/06/2011, 08:44
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Ranking con historial

bueno, agrega a la tabla donde pones los puntajes un campo DATE llamado fecha

supongamos que tu tabla es algo así donde vas modificando los puntajes:

Código SQL:
Ver original
  1. ptj_equipo_a | ptj_equipo_b | ptj_equipo_c
  2.          100 |          120 |           70

agregamos un campo mas llamado fecha donde siempre insertaras la fecha del dia en que editaste (NOW()):


Código SQL:
Ver original
  1. ptj_equipo_a | ptj_equipo_b | ptj_equipo_c | fecha
  2.          100 |          120 |           70 | 02-06-2011

ojo que dije insertar (INSERT) y no actualizar (UPDATE)

la gracia es que cada día insertes nuevos puntajes

Código SQL:
Ver original
  1. ptj_equipo_a | ptj_equipo_b | ptj_equipo_c | fecha
  2.          100 |          120 |           70 | 02-06-2011
  3.           80 |           90 |           50 | 03-06-2011
  4.          150 |          200 |          160 | 04-06-2011

cuando quieras el puntaje actual simplemente buscas la ultima fecha

si quieres el puntaje anterior o de una fecha especifica solo obtienes la fecha deseada

si quieres también puedes obtener la suma del puntaje semanal o mensual haciendo mas emocionante participar cada día.

y lo mejor de todo, como tus datos son históricos puedes mostrar estadísticas, gráficos, logs, etc.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D

Etiquetas: historial, ranking
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 02:27.