Foros del Web » Programando para Internet » PHP »

Restar dos fechas

Estas en el tema de Restar dos fechas en el foro de PHP en Foros del Web. Hola, Tengo un pequeño problema. Hice el siguiente codigo php y resulta que en local me funciona bien pero cuando lo subo al servidor no. ...
  #1 (permalink)  
Antiguo 28/08/2014, 07:27
 
Fecha de Ingreso: febrero-2014
Mensajes: 99
Antigüedad: 10 años, 2 meses
Puntos: 0
Restar dos fechas

Hola,

Tengo un pequeño problema.
Hice el siguiente codigo php y resulta que en local me funciona bien pero cuando lo subo al servidor no.
Mi idea es que se resten dos fechas (fecha actual y fechas antiguas guardadas en una bd)
Lo mismo hay algo que no es correcto y es mejor ponerlo de otra forma.
Alguien me puede echar una mano ?

Código PHP:
Ver original
  1. $fecha_actual = date("Y-m-d");
  2. list($anio, $mes, $dia) = explode("-", $fecha_actual);
  3.  
  4.  
  5. $query = mysql_query("SELECT * from fechas where MONTH(fecha) = '$mes' AND DAYOFMONTH(fecha) = '$dia'");
  6. if(mysql_num_rows($query)>=1){
  7.     while($r_query = mysql_fetch_array($query)){
  8.        
  9.         $fecha_vieja = $r_query['fecha'];
  10.         list($aniov, $mesv, $diav) = explode("-", $fecha_vieja);
  11.        
  12.         $datetime2 = date_create($fecha_actual);
  13.         $datetime1 = date_create($fecha_vieja);
  14.            
  15.         if($mes.$dia == $mesv.$diav){
  16.            
  17.             $interval = date_diff($datetime2, $datetime1);
  18.             echo $interval->format('%y años');
  19.         }
  20.     }
  21.  
  22. }else {echo "no hay";}

Saludos
Gracias
  #2 (permalink)  
Antiguo 28/08/2014, 08:29
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Restar dos fechas

Cita:
Hice el siguiente codigo php y resulta que en local me funciona bien pero cuando lo subo al servidor no.
Sucede que estás usando código PHP para comparar fechas almacenadas en MySQL y eso sencillamente es incorrecto.

¿Por qué?

Pues ya lo has experimentado, puedes cambiar la fecha del servidor y eso afectará a PHP pero no a los datos almacenados en MySQL.

De ahí tu error.

¿Solución?

Usar únicamente SQL para comparar fechas.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 28/08/2014, 17:14
 
Fecha de Ingreso: febrero-2014
Mensajes: 99
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Restar dos fechas

Vaya, no tenia ni idea.
Ando un poco mal en sql.
Alguien me puede echar una mano ?


Gracias
Saludos
  #4 (permalink)  
Antiguo 28/08/2014, 21:20
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: Restar dos fechas

puedes usar la funcion datediff de mysql http://dev.mysql.com/doc/refman/5.5/...ction_datediff


Saludos

Etiquetas: fecha, mysql, restar, select, sql
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 06:31.