Foros del Web » Programando para Internet » PHP »

Obtener Cumpleaños del mes

Estas en el tema de Obtener Cumpleaños del mes en el foro de PHP en Foros del Web. Hola, estoy intentando mostrar en mi pagina principal los cumpleaños del mes, pero no tengo idea de como lograrlo, verán el problema es el siguiente ...
  #1 (permalink)  
Antiguo 05/01/2011, 00:06
Avatar de Butters  
Fecha de Ingreso: noviembre-2010
Mensajes: 83
Antigüedad: 13 años, 5 meses
Puntos: 3
Obtener Cumpleaños del mes

Hola, estoy intentando mostrar en mi pagina principal los cumpleaños del mes, pero no tengo idea de como lograrlo, verán el problema es el siguiente

Tengo una tabla que se llama k_miembros y tiene los siguientes campos
id_miembro int
nombre int
cumpleanos int

El cumpleaños lo guardo como int ya que lo obtengo con la función time(); , ahora bien el problema es como obtener los miembros que cumplan el mes en curso, encontré una función para mostrar fechas pero debían ser del año actual y como los cumpleaños son en años diferentes al actual no se como obtenerlos.

Espero me puedan ayudar.
Saludos.
  #2 (permalink)  
Antiguo 05/01/2011, 00:51
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Obtener Cumpleaños del mes

no entiendo, si los cumpleaños son cada año... creo que el factor del año actual no es importante, vamos.. en dicho caso solo emplea el año actual, y calculas luego el año real después...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 05/01/2011, 01:02
Avatar de Butters  
Fecha de Ingreso: noviembre-2010
Mensajes: 83
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: Obtener Cumpleaños del mes

lo que no se es comparar con los valores de time el mes actual con el mes de la fecha de nacimiento, como de un año a otro el numero de segundos cambia mucho asi que no se como compararlo, si fuera del mismo año podria hacer una consulta between el mes actual en formato time y el fin del mes en formato time igual pero para cumpleaños no se como.

Saludos
  #4 (permalink)  
Antiguo 05/01/2011, 01:10
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Obtener Cumpleaños del mes

si un cumpleaños, se cumple cada año, el año sigue siendo inútil...

vamos, que:
Código PHP:
$mes_actual date('m');
$fecha_cumple '1987/06/10';

$mes_cumple date('m'strtotime($fecha_cumple));

if (
$mes_actual == $mes_cumple) echo 'Cumpleaños!!'
aquí el problema esta en que al estar guardada la fecha como INT, es casi imposible determinar el mes dado sin recurrir a cálculos extrayendo el dato previamente...

sería como iterar todas las fechas de la BD, y operar una a una... he ahí otra razón de que un buen diseño en la BD es crucial en estos casos, ya que una operación de fechas a través de SQL se realiza internamente... aunque hablando me quedo corto, es lo mismo, veas por donde lo veas...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 05/01/2011, 01:21
Avatar de Butters  
Fecha de Ingreso: noviembre-2010
Mensajes: 83
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: Obtener Cumpleaños del mes

gracias, tendré que cambiar el formato de fecha, lo bueno que apenas lo estoy integrando y puedo modificarla.
Gracias por la información siempre me sacas de dudas pateketrueke
  #6 (permalink)  
Antiguo 06/01/2011, 08:05
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 6 meses
Puntos: 80
Respuesta: Obtener Cumpleaños del mes

Si en tu base de datos pones la fecha de nacimiento la consulta para obtener todos los cumpleaños del mes en MySQL seria de la siguiente forma:

Código MySQL:
Ver original
  1. SELECT * FROM tuTabla WHERE MONTH (fechaNacimiento) = 10

En este ejemplo te regresaría todos los cumpleaños de octubre.

Saludos
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp
  #7 (permalink)  
Antiguo 06/01/2011, 08:16
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Obtener Cumpleaños del mes

bueno yo hace mucho tiempo tube q hacer algo asi...
y lo de consultar por mes en realidad no sirve mucho.. ya que si alguien esta de cumpleaños el dia 1 y estas a 30 del mes anterior no lo mostrara

la consulta que realize en ese momento fue esta
Código SQL:
Ver original
  1. SELECT nombres
  2. FROM personal
  3. WHERE EXTRACT(MONTH FROM age(fecha_nacimiento)) = 11
  4. OR EXTRACT(MONTH FROM fecha_nacimiento) = date_part('month', now())
  5. AND EXTRACT(DAY FROM fecha_nacimiento) = date_part('day', now())

ten en cuenta que yo uso postgresql..
pero esa es la idea

saludos.
  #8 (permalink)  
Antiguo 06/01/2011, 08:31
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 6 meses
Puntos: 80
Respuesta: Obtener Cumpleaños del mes

Y si, solo muestra los cumpleaños del mes que quieres. Otra cosa seria que quisiera que mostrara un mes de cumpleaños pero tomando la fecha de hoy como el centro y que se muestren 15 días antes de hoy y 15 días después. Eso se puede lograr con Interval.... pero creo que es solo con fechas actuales y se complica mas con meses..


Saludos
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp

Etiquetas: cumpleaños
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:04.