Ver Mensaje Individual
  #26 (permalink)  
Antiguo 23/01/2009, 13:26
Avatar de Ronruby
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: Mensaje de cumpleaños - fecha de nacimiento

Cita:
El problema esta en strtotime. Porque convierte TODO a tu UNIX Timestamp, por lo tanto 1982-01-30 no esta entre hoy y 25 dias...quisiera entender un poquito mas...gracias otra vez
La funcion strtotime() obtiene el unix timestamp de la fecha dada. El unix timestamp no es mas que la cantidad de segundos desde el 1ero de Enero de 1970 hasta la fecha dada. Por eso, la cantidad de segundos de, por ejemplo, 1977 no esta entre la cantidad de segundos de fechas de el 2009.

Mira este tema, al parecer es lo que necesitas:
http://www.webdeveloper.com/forum/ar.../t-131202.html

Cita:
Entonces lo ideal seria hacer un calculo antes de ejecutar la consulta y dependiendo de la fecha, ejecutar una consulta u otra.
Seria calcular si al sumarle X cantidad de dias, el mes no cambia. Sino cambia:
SELECT loquesea FROM tabla WHERE MONTH(fechaNac) = '$mes' AND (DAY(fechaNac) BETWEEN '$hoy' AND '$cincoDias');

Pero si pasa de mes, entonces creo que seria algo como:
SELECT loquesea FROM tabla WHERE (MONTH(fechaNac) = '$mes' AND (DAY(fechaNac) BETWEEN '$hoy' AND 'ultimoDiaDelMes')) OR (MONTH(fechaNac) = '$proximoMes' AND (DAY(fechaNac) BETWEEN '$primerDiaProximoMes' AND '$cincoDiasMenosCantidadYaContada'));

Última edición por Ronruby; 23/01/2009 a las 13:43