Foros del Web » Programando para Internet » ASP Clásico »

campo numérico en formulario

Estas en el tema de campo numérico en formulario en el foro de ASP Clásico en Foros del Web. tengo un formulario, que tiene fecha nacimiento, pero si no se rellena da error, hay alguna forma de evitarlo sin necesidad de rellenarlo? Otra pregunta ...
  #1 (permalink)  
Antiguo 14/11/2004, 13:37
 
Fecha de Ingreso: junio-2004
Mensajes: 95
Antigüedad: 20 años, 10 meses
Puntos: 0
campo numérico en formulario

tengo un formulario, que tiene fecha nacimiento, pero si no se rellena da error, hay alguna forma de evitarlo sin necesidad de rellenarlo?
Otra pregunta es como pongo a un botón de enviar datos, que también me lleve a otra página al mismo tiempo.
Saludos
  #2 (permalink)  
Antiguo 14/11/2004, 14:19
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 22 años, 5 meses
Puntos: 4
¿Qué error da y dónde? Si estás guardando en una variable el valor de ese campo, por ejemplo

fechaNac = Request.Form("fechaNac")

no daría error aunque el campo esté vacío, ya que la variable tendría entonces un valor, aunque esté vacío. Ahora bien, si luego utilizas el valor de esa variable para algún tipo de operación es donde te puede dar error.

Podrías poner un fecha por defecto:

Código:
If Request.Form("fechaNac") = "" Then
   fechaNac = "01/01/1980"
Else
   fechaNac = Request.Form("fechaNac")
End if
Necesitamos que des más datos (como siempre) para que te podamos ayudar.

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #3 (permalink)  
Antiguo 14/11/2004, 14:32
 
Fecha de Ingreso: junio-2004
Mensajes: 95
Antigüedad: 20 años, 10 meses
Puntos: 0
más datos sobre la duda

lo que me pone es lo siguiente:
--------------------------
"No coinciden los tipos de datos en la expresión de criterios."
-------------------------
al estar vacío me dice esto, si lo relleno no hay problema.
Lo defino de la siguiente manera:
- en la base de datos como "fecha corta"
- fecha_nacimiento=(request.form("dia")&"/"&request.form("mes")&"/"&request.form("ano"))
y también:
fecha_nacimiento=reglee("fecha_nacimiento")
diaform=day(fecha_nacimiento)
mesform=month(fecha_nacimiento)
anoform=year(fecha_nacimiento)
repito si lo relleno no hay problema, pero no puede tener valor vacío, alguna sugerencia?
  #4 (permalink)  
Antiguo 14/11/2004, 15:00
 
Fecha de Ingreso: noviembre-2004
Ubicación: Sevilla
Mensajes: 139
Antigüedad: 20 años, 5 meses
Puntos: 0
en un campo numerico solo valen numeros

nada de /'s

un saludo
__________________
Punkis De Mierda

Foro punk rock
  #5 (permalink)  
Antiguo 14/11/2004, 15:09
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 22 años, 5 meses
Puntos: 4
Sí, puedes hacer dos cosas:

La primera es impedir que el formulario quede vacío antes de enviar el formulario, es decir, obligar al cliente a rellenar los campos cuando de al botón "Enviar". Esto tienes que hacerlo con Javascript.

La segunda opción es, como ya te indiqué antes, poner una fecha por defecto en el caso de que los campos vengan vacíos.

Código:
If Request.Form("dia") = "" Then
   dia = "01"
Else
   dia = Request.Form("dia")
End if

If Request.Form("mes") = "" Then
   mes = "01"
Else
   mes = Request.Form("dia")
End if

If Request.Form("ano") = "" Then
   ano = "1980"
Else
   ano = Request.Form("ano")
End if
xAlex, tienes razón, pero por eso juglar había puesto

diaform=day(fecha_nacimiento)

para formatear la cadena de texto y sacar el día que correspondiera.

UN saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #6 (permalink)  
Antiguo 14/11/2004, 15:34
 
Fecha de Ingreso: junio-2004
Mensajes: 95
Antigüedad: 20 años, 10 meses
Puntos: 0
respuesta

gracias, le voy a meter el javascript y hacerlo un campo obligatorio, con respecto a la otra pregunta de poner en el botón de grabar del formulario, que me envíe al mismo tiempo a la segunda hoja de formulario, como se haría, gracias por todo
  #7 (permalink)  
Antiguo 14/11/2004, 17:14
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 22 años, 5 meses
Puntos: 4
Para eso creo que lo mejor es que primero, proceses los datos del formulario con una página que no envíe nada al cliente y, si no ha habido ningún error, se redireccione a la segunda página que quieras. Puedes usar Response.Redirect o mejor, Server.Transfer.

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
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 03:16.