Foros del Web » Programando para Internet » ASPX (.net) »

Validar Fecha...

Estas en el tema de Validar Fecha... en el foro de ASPX (.net) en Foros del Web. Alguien tiene por ahi algun codigo que valide la fecha¿? que sea correcto lo q ingresan en dd/mm/yyyy...
  #1 (permalink)  
Antiguo 18/10/2006, 13:34
Avatar de shumito  
Fecha de Ingreso: mayo-2006
Mensajes: 248
Antigüedad: 18 años
Puntos: 0
Validar Fecha...

Alguien tiene por ahi algun codigo que valide la fecha¿? que sea correcto lo q ingresan en dd/mm/yyyy
  #2 (permalink)  
Antiguo 18/10/2006, 13:48
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Esta es una función que hice hace poco:
Código:
    Public Function Fecha_Correcta(ByVal Fecha as String) As Boolean
        Dim bolCorrecta As Boolean
        Dim strFecha() As String = Fecha.Split("/"c)
 
        If strFecha.Length < 3 Then
            bolCorrecta = False
 
        ElseIf Not IsDate(strFecha(2) & "-" & strFecha(1) & "-" & strFecha(0)) Then
            bolCorrecta = False
 
        Else
            bolCorrecta = True
 
        End If
 
        Return bolCorrecta
    End Function
A ver si alguien se anima y la trata de explotar, jeje
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--

Última edición por RsOfT; 18/10/2006 a las 14:00
  #3 (permalink)  
Antiguo 18/10/2006, 14:04
Avatar de shumito  
Fecha de Ingreso: mayo-2006
Mensajes: 248
Antigüedad: 18 años
Puntos: 0
No me funciona me reclama por el IsDate y por el strFecha ojo estoy programando en C#
la deje como sigue
private bool Fecha_Correcta(string Fecha)
{
bool bolCorrecta;
string[] strFecha = Fecha.Split('/');
if (strFecha.Length < 3)
{
bolCorrecta = false;
}
else if (!(IsDate(strFecha(0) + "-" + strFecha(1) + "-" + strFecha(2))))
{
bolCorrecta = false;
}
else
{
bolCorrecta = true;
}
return bolCorrecta;
}
  #4 (permalink)  
Antiguo 18/10/2006, 14:15
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Como me había fijado que la entrada de la fecha la haces dd/mm/yyyy modifiqué el código para poner el orden 2,1,0 y no 0,1,2.

Seguramente copiaste el código que puse antes de yo hace la modificación. Prueba con:
Código:
else if (!(IsDate(strFecha(2) + "-" + strFecha(1) + "-" + strFecha(0))))
Esto es porque si se introduce una fecha 31/10/2006, la pregunta que hará el programa es: If not IsDate("2006-10-31") Then, pero como lo tenías antes el programa estaba preguntando If not IsDate("31-10-2006") Then y esta última no es una fecha válida si el servidor tiene su configuración regional como mm/dd/yyyy.
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #5 (permalink)  
Antiguo 18/10/2006, 14:29
Avatar de shumito  
Fecha de Ingreso: mayo-2006
Mensajes: 248
Antigüedad: 18 años
Puntos: 0
Error 17 The name 'IsDate' does not exist in the current context
Error 18 'strFecha' is a 'variable' but is used like a 'method'
  #6 (permalink)  
Antiguo 18/10/2006, 14:42
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
No te puedo ayudar con C# porque solamente sé Visual Basic.
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
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:21.