Foros del Web » Programando para Internet » PHP »

De dos fechas como calculo los dias pasados

Estas en el tema de De dos fechas como calculo los dias pasados en el foro de PHP en Foros del Web. Buenas; como calculo los dias transcurridos entre dos fechas. Gracias...
  #1 (permalink)  
Antiguo 07/08/2002, 10:40
 
Fecha de Ingreso: julio-2002
Mensajes: 36
Antigüedad: 15 años, 4 meses
Puntos: 0
De dos fechas como calculo los dias pasados

Buenas;

como calculo los dias transcurridos entre dos fechas.

Gracias
  #2 (permalink)  
Antiguo 07/08/2002, 11:00
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Re: De dos fechas como calculo los dias pasados

Y en que formato tienes las dos fechas?

Es un DATE .. de Mysql ..? .. es un formato tuyo propio (tal q dia//mes/año .. o algo asi ..)

Es un TIMESTAMP de UNIX (por ejemplo obtenido con un time() ...)

Se mas detallado en tus preguntas ... asi no hay forma de dar una solucion correcta y acertada .. solo hacemos que congeturas .. no crees?.

Un saludo,
  #3 (permalink)  
Antiguo 07/08/2002, 11:12
 
Fecha de Ingreso: julio-2002
Mensajes: 36
Antigüedad: 15 años, 4 meses
Puntos: 0
Re: De dos fechas como calculo los dias pasados

Es un campo timestamp que solo se pone la fecha cuando hago alguna actualizacion en ese registro, por que puede ser, cluster una ayuda.
  #4 (permalink)  
Antiguo 07/08/2002, 20:43
Avatar de gomo  
Fecha de Ingreso: mayo-2002
Ubicación: [email protected]
Mensajes: 906
Antigüedad: 15 años, 7 meses
Puntos: 0
Re: De dos fechas como calculo los dias pasados

segun el manual de mysql
los campos timestamp de mysql se llenan automaticamente con la fecha del momento de modificacion de un registro (ya sea insert o update), a menos que se especifique un valor determinado, o se setee a NULL. En todos los otros casos se modificara la fecha a la de ese momento. La pagina del manual es <a href='ir.asp?http://www.mysql.com/doc/en/DATETIME.html' target='_blank'>http://www.mysql.com/doc/en/DATETIME.htm...</a>

Para comparar las fechas hay diferentes maneras...
Una seria pasar las fechas a formato timestamp UNIX (que dicho sea de paso Cluster, vi que preguntbas el otro dia si no me equivoco, son los segundos transcurridos desde el 1 de enero de 1970, el comienzo de la &quot;era unix&quot;), restarlas y obtener el tiempo transcurrido en segundos para despues convertirlo a dias horas etc... Para convertirlo usas la funcion mktime() que, cuando no, esta en el manual de php.net
Esa es una posible solucion. No se si halla manera de hacerlo directamente desde la BD, porque creo que MySQL trata de manera &quot;estupida&quot; los timestamps, los compara como integers nada mas...
Pero bueno es una manera.

Saludos ;)

<div align="center"><img src="http://cablemodem.fibertel.com.ar/sainztrapaga/images/firma.jpg" width="435" height="70" border="0">
</div>
  #5 (permalink)  
Antiguo 07/08/2002, 21:23
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Re: De dos fechas como calculo los dias pasados

Aplicar un DATE_FORMTAT a un TIMESTAMP de Mysql o a un DATETIME el resultado es el mismo ...

Eso si, como dice tu GOMO .. no se porque el TIMESTAMP q hace Mysql lo formatea a su manera .. siendo el TIMESTAMP de Unix lo que comentas ...

El caso es es, si usas timestamp de unix . lo metes en un campo int(11) .. por ejemplo y si piensas usar el timestamp de Mysql .. para eso usa DATETIME q es lo mismo y mas claro al echar un vistazo a unas tablas con esos formatos.

Un saludo,
  #6 (permalink)  
Antiguo 08/08/2002, 12:25
 
Fecha de Ingreso: septiembre-2001
Ubicación: Monterrey
Mensajes: 663
Antigüedad: 16 años, 2 meses
Puntos: 6
Re: De dos fechas como calculo los dias pasados

Primero que nada, MySQL trata los campos timestamp como lo que son, de hecho a un pasandolos como string los reconoce, de tal manera que si restas o sumas dos tipos de datos Date , mysql los convierte a segundos hace la operacion y te da el resultado en segundos trasncurridos.

A hora otra forma de determinar el numero de dias transcurridos entre dos datos de tiepo Date es usar la funcion TO_DAYS que devuelve el numero de dias trasncurridos. de tal forma que con una consulta como la siguiente:
Código:
SELECT TO_DAYS(campo_date1) - TO_DAYS(campo_date2) AS dias From Tabla  
Recuepramos los dias transcurridos entre dos fechas.

Saludos!.
Mty. NL.
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 19:53.