Foros del Web » Programando para Internet » PHP »

Comparación de fechas

Estas en el tema de Comparación de fechas en el foro de PHP en Foros del Web. Hola Tengo un campo DATE llamado fecha1 en una tabla de mysql con el formato aaaa-mm-dd. Necesito tomar esa fecha de fecha1 y compararla con ...
  #1 (permalink)  
Antiguo 06/11/2010, 06:43
Avatar de atoleon  
Fecha de Ingreso: marzo-2007
Mensajes: 156
Antigüedad: 17 años
Puntos: 1
Comparación de fechas

Hola

Tengo un campo DATE llamado fecha1 en una tabla de mysql con el formato aaaa-mm-dd.
Necesito tomar esa fecha de fecha1 y compararla con la fecha actual, para lo cual hago lo siguiente:

Código PHP:
//obtener la fecha actual en formato DATE de mysql
$datestring "%y-%m-%d";
$fecha_actual mdate ($datestring);

//comparar
if($fecha1 <= $fecha_actual) {
   return 
'inactivo';
}else {
   return 
'activo';

Esta operación siempre me devuelve 'inactivo' sea o no fecha1 menor o igual que fecha_actual
*He comprobado el valor de las fechas y son correctos, no así la operación.

Supongo que se trata de error al utilizar estas comparaciones pero he estado googleando y no encuentro nada sobre operar con este formato de fecha. He encontrado algo sobre strtotime pero me gustaría simplificarlo al formato de fecha de mysql pues es lo único que necesito. Además de que tendría que cambiar muchas cosas en mi código.

Saludos, y mil gracias de antemano
  #2 (permalink)  
Antiguo 06/11/2010, 07:19
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 1 mes
Puntos: 96
Respuesta: Comparación de fechas

Saludos

Podrias obtenerlo directamente desde la consulta que obtienes $fecha1

Código PHP:
SELECT fechaCURDATE() as fechaactual FROM tabla
y luego si manejarlo como haces el if
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #3 (permalink)  
Antiguo 06/11/2010, 07:59
Avatar de atoleon  
Fecha de Ingreso: marzo-2007
Mensajes: 156
Antigüedad: 17 años
Puntos: 1
Respuesta: Comparación de fechas

Muchísimas gracias, lo he conseguido solucionar utilizando CURDATE(). He hecho una resta y si el resultado es positivo quiere decir que aún queda tiempo de activo.

Etiquetas: fechas
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 08:27.