Foros del Web » Programando para Internet » ASP Clásico »

calcular dias y meses entre dos fechas

Estas en el tema de calcular dias y meses entre dos fechas en el foro de ASP Clásico en Foros del Web. Hola amigos, tengo el siguiente problema: tengo que conseguir la cantidad de dias y meses transcurridos entre 2 fechas, algo asi: inicio: 30/06/2009 fin 01/07/2009 ...
  #1 (permalink)  
Antiguo 02/07/2009, 10:22
Avatar de zeudio  
Fecha de Ingreso: enero-2002
Mensajes: 314
Antigüedad: 23 años, 3 meses
Puntos: 4
calcular dias y meses entre dos fechas

Hola amigos, tengo el siguiente problema: tengo que conseguir la cantidad de dias y meses transcurridos entre 2 fechas, algo asi:

inicio: 30/06/2009
fin 01/07/2009

y el resultado deberia ser este:

dias transcurridos: 1
meses transcurridos: 0
años transcurridos: 0

ahora, me diran que con la funcion datediff puedo obtener el resultado pero he notado que esta funcion arroja resultados muy inexactos, en el ejemplo anterior me arroja lo siguiente:

dias transcurridos: 1
meses transcurridos: 1
años transcurridos: 0

chequen que debido al cambio en el digito de meses en las fechas lo toma como un mes completo. Aqui el codigo:

Código PHP:
dias datediff("d"FInicio,FFinal)
meses datediff("n"FInicio,FFinal
y lo mismo pasa si quieres calcular minutos y horas transcurridos, aunque no hayan pasado las 24 horas te lo toma como un dia completo si es que el digito correspondiente a dias cambió.

Si alguien conoce otra forma de hacerlo o cuenta con una funcion para ello, o si me ayuda con alguna idea para hacer una, le agradezco de antemano.

gracias por su ayuda
  #2 (permalink)  
Antiguo 02/07/2009, 11:13
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 3 meses
Puntos: 98
Respuesta: calcular dias y meses entre dos fechas

Tendrás que implementar algo de lógica basándote en los días.

Si mes es = junio, mes tiene 30 días
meses transcurridos = datediff("n", FInicio,FFinal) \ 30

Se me hace que por ahí va la cosa

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
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 17:46.