Foros del Web » Programando para Internet » PHP »

como se si la diferencia entre dos fechas es menor que dos meses?

Estas en el tema de como se si la diferencia entre dos fechas es menor que dos meses? en el foro de PHP en Foros del Web. necesito una funcion que me compruebe si la diferencia de tiempo entre dos fechas es menor que 3 meses, lo quiero para que me saque ...
  #1 (permalink)  
Antiguo 26/05/2010, 11:35
 
Fecha de Ingreso: junio-2009
Mensajes: 103
Antigüedad: 15 años, 5 meses
Puntos: 0
como se si la diferencia entre dos fechas es menor que dos meses?

necesito una funcion que me compruebe si la diferencia de tiempo entre dos fechas es menor que 3 meses, lo quiero para que me saque de la base de datos solo aquellos productos que lleven dados de alta menos de 3 meses en la base de datos y los sacaria como "novedades"
  #2 (permalink)  
Antiguo 26/05/2010, 11:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: como se si la diferencia entre dos fechas es menor que dos meses?

Que motor de bases de datos usas?

Saludos.
  #3 (permalink)  
Antiguo 26/05/2010, 11:41
 
Fecha de Ingreso: junio-2009
Mensajes: 103
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: como se si la diferencia entre dos fechas es menor que dos meses?

Cita:
Iniciado por GatorV Ver Mensaje
Que motor de bases de datos usas?

Saludos.
innodb
  #4 (permalink)  
Antiguo 26/05/2010, 12:00
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: como se si la diferencia entre dos fechas es menor que dos meses?

Puedes usar la función DATEDIFF para saber el tiempo que hay desde la fecha actual a la fecha que está en la base de datos en la clausula de WHERE, algo así
Código MySQL:
Ver original
  1. SELECT * FROM tabla WHERE DATEDIFF(fecha_en_formato_date_time, NOW()) <= 90
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 26/05/2010, 17:04
 
Fecha de Ingreso: junio-2009
Mensajes: 103
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: como se si la diferencia entre dos fechas es menor que dos meses?

hola,

pues he probado eso pero no funciona, os pongo aqui toda la informacion que uso por si hago algo mal:


-El campo en la base de datos donde almaceno la fecha del articulo lo tengo en datetime
-Las altas de articulos las hago mediante formularios teniendo la entrada de las fechas de los articulos con la funcion CURRENT_TIMESTAMP:
"INSERT INTO articulo VALUES('','$tipo','$categoria[0]','$foto','$marca','$modelo','$precio','$descripci on','$stock',CURRENT_TIMESTAMP)";
-La consulta con la funcion que me has dado la realizo de la siguiente manera:
$consulta = "SELECT codarticulo FROM articulo WHERE DATEDIFF(fecha, NOW()) <= 90";


el resultado que obtengo son todos los campos.... :s
  #6 (permalink)  
Antiguo 26/05/2010, 17:10
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: como se si la diferencia entre dos fechas es menor que dos meses?

Perdona es al revés
Código MySQL:
Ver original
  1. SELECT * FROM tabla WHERE DATEDIFF(NOW(), fecha) <= 90
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 26/05/2010, 17:56
 
Fecha de Ingreso: junio-2009
Mensajes: 103
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: como se si la diferencia entre dos fechas es menor que dos meses?

Cita:
Iniciado por abimaelrc Ver Mensaje
Perdona es al revés
Código MySQL:
Ver original
  1. SELECT * FROM tabla WHERE DATEDIFF(NOW(), fecha) <= 90
wow gracias por tu rapidez abimaelrc, la formula funciona de lujo, muchsimas gracias

Etiquetas: diferencia, dos, fechas, menor, meses
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 10:30.