Foros del Web » Programando para Internet » PHP »

Ordenando por Cumpleaños

Estas en el tema de Ordenando por Cumpleaños en el foro de PHP en Foros del Web. Hola, Tengo un codigo que detecta que personas cumplen años en los proximos 30 dias. El problema es que no se como ordenarlo por Fecha, ...
  #1 (permalink)  
Antiguo 06/04/2009, 04:42
 
Fecha de Ingreso: noviembre-2008
Mensajes: 259
Antigüedad: 15 años, 4 meses
Puntos: 1
Hola,

Tengo un codigo que detecta que personas cumplen años en los proximos 30 dias.
El problema es que no se como ordenarlo por Fecha, es decir, los que cumplan antes que vayan primeros. Evidentemente nos sirve un simple ORDER BY Fecha ya que incluye el año y no ordenaria por cumpleaños, sino por edad.

Alguna idea? Gracias!!

Código PHP:
$prox mysql_query("SELECT Jugador, Edad FROM datos WHERE to_days(date_add(Edad, interval year(current_date)-year(Edad) year)) - to_days(current_date) BETWEEN 0 and 30");
while (
$lineas mysql_fetch_array($prox))
{
echo 
nl2br("<font face=Arial color=#FFFFFF size=2></b><a href='ficha.php?Jugador=".urlencode($lineas[Jugador])."'><font color=#FFFFFF>" $lineas['Jugador']."\n");

Se me ocurre ordenarlos segun "Dias que quedan hasta el cumpleaños".

Seria una opcion?

Última edición por GatorV; 06/04/2009 a las 10:56
  #2 (permalink)  
Antiguo 06/04/2009, 10:22
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Ordenando por Cumpleaños

ORDER BY MONTH(fecha) DESC, DAY(fecha) DESC
  #3 (permalink)  
Antiguo 06/04/2009, 10:50
 
Fecha de Ingreso: febrero-2009
Ubicación: Cusco - Peru
Mensajes: 142
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Ordenando por Cumpleaños

Código PHP:
ORDER BY DATE_FORMAT(fecha,'%m-%d'ASC 
  #4 (permalink)  
Antiguo 06/04/2009, 11:05
 
Fecha de Ingreso: abril-2009
Mensajes: 15
Antigüedad: 15 años
Puntos: 0
Respuesta: Ordenando por Cumpleaños

Proba esta consulta...

Código PHP:
SELECT JugadorEdad 
FROM datos 
WHERE DAY
(fecha) >= date(GETDATE()) AND MONTH(fecha) >= date(GETDATE())
ORDER BY DAY(fechaASCMONTH(fechaASC 
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 15:54.