Foros del Web » Programando para Internet » PHP »

Problema Comparar fechas

Estas en el tema de Problema Comparar fechas en el foro de PHP en Foros del Web. Como estan: Debo ingresar a una tabla de una bd las fechas de expedición y vencimiento de unos documentos. ya tengo almacenadas en 2 varables ...
  #1 (permalink)  
Antiguo 01/10/2007, 13:53
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años
Puntos: 50
Problema Comparar fechas

Como estan:

Debo ingresar a una tabla de una bd las fechas de expedición y vencimiento de unos documentos.

ya tengo almacenadas en 2 varables estas fechas algo asi "los datos vienen de un formulario":
$FechaExpedicion = "1998-11-15";
$FechaVencimiento = "1998-11-17";
lo logico es que la fecha de Vencimiento sea mayor o mas reciete que la fecha de expedición. Necesito comparar estas dos fechas pero no se como.

me pueden ayudar?

Gracias.
  #2 (permalink)  
Antiguo 01/10/2007, 14:19
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años
Puntos: 6
Re: Problema Comparar fechas

Hola puedes compararlas usando la funcion strtotime():

algo asi:

$f1 = strtotime( $fechainicio );
$f2 = strtotime( $fechavencimiento );

if($f1>$f2){echo "esto no se puede"; }
__________________
"Eres grande por que caminas entre gigantes"
  #3 (permalink)  
Antiguo 01/10/2007, 14:40
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años
Puntos: 50
Re: Problema Comparar fechas

pues ya medio robe esta solucion que me dan y lo que pe pude dar cuenta es que si las compara si una es mayor que la otra pero si son iguales no hace nada.

Si saben otra solucion mas precisa o saben como mejorar esta se los agradezco

Gracias ferbux
  #4 (permalink)  
Antiguo 01/10/2007, 18:04
 
Fecha de Ingreso: octubre-2007
Ubicación: agua dulce, veracruz
Mensajes: 22
Antigüedad: 16 años, 7 meses
Puntos: 1
Re: Problema Comparar fechas

agrega el operador OR asi:
Código PHP:
$f1 strtotime$fechainicio );
$f2 strtotime$fechavencimiento );

if(
$f1>$f2 OR $f1 == $f2){echo "esto no se puede"; } 

otra solucion seria

Código PHP:
$f1 strtotime$fechainicio );
$f2 strtotime$fechavencimiento );
//fi >= f2  f1 es mayour o igual que f2
if($f1>=$f2 ){echo "esto no se puede"; } 

-Kerberos^^
  #5 (permalink)  
Antiguo 01/10/2007, 18:23
 
Fecha de Ingreso: octubre-2007
Ubicación: Valencia (españa)
Mensajes: 23
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Problema Comparar fechas

Si las fechas siempre tiene el misom formato (yyyy-mm-dd) podrias crear un array con explode y luego utilizar la funcion mktime() y colocar cada indice del array en el parametro correspondiente de mktime(). Esto se deberia repetir con las dos fechas, obtendriamos dos fechas en formato ¿unix? (no me ha cuerdo..) que utilizariamos para hacer la comprobacion

Código PHP:
<?
$f1 
'1986-05-23';
$f2 '1985-05-23';

// Obtener fecha unix para $f1
$f1x explode("-",$f1);
$f1 mktime('0','0','0',$f1x[1],$f1x[2],$f1x[0]);

// Obtener fecha unix para $f2
$f2x explode("-",$f2);
$f2 mktime('0','0','0',$f2x[1],$f2x[2],$f2x[0]);

if(
$f1>$f2 OR $f1 == $f2) echo "esto no se puede";
?>
Otra idea que no tengo muy clara, seria eliminar el guion de las dos variables con str_replace y hacer comprobacion directamente con 19850523 > ó < 19850523

En cualquier caso, las dos opcion deben cumplir el formato indicado: yyyy-mm-dd pudiendo reemplazar el guion por cualquier simbolo...
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 05:31.