Foros del Web » Programando para Internet » Javascript »

fecha correcta

Estas en el tema de fecha correcta en el foro de Javascript en Foros del Web. Hola tengo esta expresion regular que me funciona bien pero como podrai hacer para que el dia fuese entre 1 y 31 el mes entre ...
  #1 (permalink)  
Antiguo 02/04/2009, 09:36
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 1 mes
Puntos: 0
fecha correcta

Hola tengo esta expresion regular que me funciona bien pero como podrai hacer para que el dia fuese entre 1 y 31 el mes entre 1 y 12

Código:
	patron = /^\d{4}\/\d{2}\/\d{1,2}$/
  #2 (permalink)  
Antiguo 14/04/2009, 10:04
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: fecha correcta

Nadie me puede ayudar con lo de la fecha
  #3 (permalink)  
Antiguo 14/04/2009, 10:28
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: fecha correcta

Prueba así:
Código javascript:
Ver original
  1. patron = /^(\d{4})\/(\d{2})\/(\d{1,2})$/;
  2. if (partes = patron.exec(fecha)) {
  3.     if (partes[2] >= 1 && partes[2] <= 12 && partes[3] >=1 && partes[3] <= 31) {
  4.         // Fecha válida
  5.     }
  6. }
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 14/04/2009, 11:36
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: fecha correcta

No me funciona ahora se lo pasa todo lo que ponga


Código PHP:
function validarFecha() 
{
    
fec document.formulario.fecha.value 
    patron 
= /^d{4}/d{2}/d{1,2}$/

      if (
partes patron.exec(fec)) {

        if (
partes[2] >= && partes[2] <= 12 && partes[3] >=&& partes[3] <= 31) {
            return 
true;
        }
    }else{
            
alert("Fecha incorrecta.");
            
document.formulario.fecha.focus()
            return 
false;
          
    }
    

  #5 (permalink)  
Antiguo 14/04/2009, 11:38
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: fecha correcta

Tu expresión regular está mal, no es la misma que indiqué en el mensaje anterior.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #6 (permalink)  
Antiguo 14/04/2009, 11:44
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: fecha correcta

Si en el codigo tengo puesto el tuyo lo que al copiarlo aki lo hecopiado mal

patron = /^(\d{4})\/(\d{2})\/(\d{1,2})$/;
  #7 (permalink)  
Antiguo 14/04/2009, 11:55
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: fecha correcta

Tu misma implementación también es incorrecta. Ya que en este caso, sólo mostrará el mensaje de error si el formato es inválido, pero no si el mes o el día son incorrectos. La lógica podría ser:
Código javascript:
Ver original
  1. if (formato_correcto) {
  2.     if (dia_mes_correcto) {
  3.         return true;
  4.     }
  5. }
  6. // Incorrecto
  7. return false;
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
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 04:27.