elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  fecha cumpleaños
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: fecha cumpleaños  (Leído 3,706 veces)
kakashi20


Desconectado Desconectado

Mensajes: 435


Ver Perfil
fecha cumpleaños
« en: 9 Julio 2013, 23:18 pm »

hola

tengo en mi bd de mysql una fecha de cumpleaños. Lo que intento hacer el un recordatorio de cumpleaños, osea, que cuando se aproxime la fecha de cumpleaños de alguien decir algo como que: faltan 3 días..

como hago este calculo entre la fecha actual del sistema y la fecha del cumpleaños.

si alguien me pudiese ayudar se lo agradeceria


En línea

1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: fecha cumpleaños
« Respuesta #1 en: 9 Julio 2013, 23:59 pm »

Tendrías que tener dos fechas.
La fecha actual y la "fecha de cumpleaños".

Además tienes que tener en cuenta la zona horaria.

http://php.net/manual/en/function.date-default-timezone-set.php

Puedes utilizar el método strtotime para restar las fechas.

En la fecha de cumpleaños tienes que reemplazar el año del cumpleaños por el año actual.

Código
  1.        date_default_timezone_set("America/Mexico_City");
  2. $current_date = date("Y-m-d");
  3. $birthday = date("Y")."-07-12";
  4.  
  5. $days = remaining_days($current_date, $birthday);
  6.  
  7. echo "Faltan ".$days." dias para tu cumpleanios";
  8.  
  9. function remaining_days($current_date, $birthday) {
  10. $difference = strtotime($birthday) - strtotime($current_date);
  11. $days = $difference / 60 /60 /24;
  12.  
  13. return $days;
  14. }
  15.  

Ya depende de ti que formato tienes para tus fechas, además coloca validaciones.

Edito.
Por cierto este programa me dice que ya faltan pocos días para mi cumple y ni siquiera lo recordaba  ;-)

Saludos.


« Última modificación: 10 Julio 2013, 00:11 am por Darhius » En línea

abc
kakashi20


Desconectado Desconectado

Mensajes: 435


Ver Perfil
Re: fecha cumpleaños
« Respuesta #2 en: 10 Julio 2013, 00:35 am »

gracias por la ayuda, tambien encontre esta manera de hacerlo

Código
  1.  
  2. SELECT * FROM cliente WHERE DATEDIFF(NOW(),fec_nac)<3
  3.  
En línea

1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: fecha cumpleaños
« Respuesta #3 en: 10 Julio 2013, 00:46 am »

gracias por la ayuda, tambien encontre esta manera de hacerlo

Código
  1.  
  2. SELECT * FROM cliente WHERE DATEDIFF(NOW(),fec_nac)<3
  3.  

Ah!, es que como el tema está en el subforo de php pensé que era más enfocado a programación.

Saludos.
En línea

abc
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines