Foros del Web » Programando para Internet » PHP »

Validar fecha entre dos fechas diferentes.

Estas en el tema de Validar fecha entre dos fechas diferentes. en el foro de PHP en Foros del Web. Hola a todos! Bueno, mi problema es el siguiente: tengo tres variables $dia $mes $anno que me guardan una fecha en especial, lo que necesito ...
  #1 (permalink)  
Antiguo 05/04/2005, 23:19
 
Fecha de Ingreso: marzo-2005
Mensajes: 12
Antigüedad: 12 años, 8 meses
Puntos: 0
Validar fecha entre dos fechas diferentes.

Hola a todos!
Bueno, mi problema es el siguiente:

tengo tres variables $dia $mes $anno que me guardan una fecha en especial, lo que necesito es validar que esa fecha se encuentre entre dos fechas cualquiera sean. Por ejemplo

si $dia = 20
$mes = 6
$anno = 2005
la fecha seria 20 de junio de 2005, validar si se encuentra entre la fecha 1/12/05 y 28/4/06 --> esto seria FALSE

Agradeceria mucho si me pudieran ayudar
  #2 (permalink)  
Antiguo 06/04/2005, 06:00
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Código PHP:
<?php
function valida_fecha($inicio$fin$validar) {
    if(
strtotime($validar)>strtotime($inicio) && strtotime($validar)<strtotime($fin)) return true;
    else return 
false;
}
$a"2005-12-01";
$b"2006-04-28";
$c"2005-06-20";

if(
valida_fecha($a$b$c)) echo "Fecha Válida";
else echo 
"FECHA NO VÁLIDA";
?>
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 20/04/2005, 08:03
 
Fecha de Ingreso: septiembre-2003
Mensajes: 216
Antigüedad: 14 años, 3 meses
Puntos: 0
Solo se puede comparar si el formatoi es aaa-mm-dd o tb con dd-mm-aaaa
  #4 (permalink)  
Antiguo 21/04/2005, 03:08
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Bueno, esa pregunta podrías contetarla tú mismo si lo intentas ¿no? ... temo que no serviría, el formato tendrá que ser YYYY-MM-DD, entonces lo que tendrás que hacer con tu fecha tipo dd-mm-aaaa es convertirla a ese formato... Puedes hacer uso de explode() http://mx2.php.net/manual/es/function.explode.php para ello...

Busca en el foro sobre conversión de fechas.. ya se ha tratado. Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #5 (permalink)  
Antiguo 21/04/2005, 08:11
Avatar de Pazosele  
Fecha de Ingreso: marzo-2005
Ubicación: BCN - España
Mensajes: 200
Antigüedad: 12 años, 9 meses
Puntos: 0
una preguntilla al respecto..

el explode tiene esta estructura:

array explode ( string separador, string cadena [, int limite] )

pero si metes una fecha , con hora tipo: dd-mm-yyyy hh:mm

como indicas los diferentes separadores: "-" " " y ":"
__________________
Share our Knowledge!
Adura Vita!
  #6 (permalink)  
Antiguo 22/04/2005, 02:24
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Con expresiones regulares... usando split().. por ejemplo:
Código PHP:
<?
$fecha 
"30-12-2005 01:54";
list( 
$dia$mes$anno$hora$minuto ) = split"[-/[:space:]:]"$fecha);

echo 
"Formato original: $fecha<br>";
echo 
"Formato adecuado: <b>$anno-$mes-$dia $hora:$minuto</b>";
?>
Que eso no signifique que no pueda hacerse con explode().

Saludos!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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:48.