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

Recogida de datos

Estas en el tema de Recogida de datos en el foro de ASP Clásico en Foros del Web. Recojo datos con QueryString, por ejemplo, así que supongo que es mejor no definir el tipo, es decir en vez de x = CInt(Request.QueryString("x")) x ...
  #1 (permalink)  
Antiguo 18/03/2007, 08:22
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Recogida de datos

Recojo datos con QueryString, por ejemplo, así que supongo que es mejor no definir el tipo, es decir en vez de

x = CInt(Request.QueryString("x"))
x = Request.QueryString("x")

puesto que si no se pasa, en este caso, un valor númerico, da error en el tipo. Así que sería mejor especificarlo en el tipo en la consulta

SQL="SELECT campo FROM bd where campo = CInt("&x&")"

y después lanzar un error, si corresponde

¿Estoy en lo cierto?

Gracias
  #2 (permalink)  
Antiguo 18/03/2007, 08:32
 
Fecha de Ingreso: noviembre-2004
Ubicación: Sevilla
Mensajes: 139
Antigüedad: 19 años, 7 meses
Puntos: 0
Re: Recogida de datos

en la consulta, si no coincide el tipo de dato de va a dar tb error

para eso tienes la función ISNUMERIC

if isnumeric(Request.QueryString("x"))=false then
response.write("tu error")
end if

si alguien ingresa algo q no sea un úmero, saldrá tu error.


saludos
__________________
Punkis De Mierda

Foro punk rock
  #3 (permalink)  
Antiguo 18/03/2007, 13:15
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Re: Recogida de datos

Gracias por tu respuesta y sí, claro ya se que va dar error, de ahí mi pregunta. ¿Es preferible que el error esté en la consulta, en vez de en la recogida de valores?

Código:
x = Request.QueryString("x") ' Recibe un valor alfabetico

Call Conectar
Call Registro (rs)

On error resume next

SQL="SELECT campo FROM bd where campo = CInt("&x&")"
Set rs = oconn.Execute(SQL)

If err.number <> 0 Then

response.write ("ERROR")

Else

imprime página

<%end if%>
Gracias
  #4 (permalink)  
Antiguo 19/03/2007, 08:01
Avatar de richard20  
Fecha de Ingreso: marzo-2006
Mensajes: 139
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Recogida de datos

Estimado,

Según mi punto de vista creo que es mejor válidar los datos antes de hacer la consulta, o sea que el error te de en la recogida de valores antes que en la consulta, siempre las validaciones las hago antes de las consultas, inserciones o ediciones ya que asi no abres la base de datos innecesariamente y ocupas menos recursos.

Saludos.
__________________
-.No Sueñes tu Vida, Vive tus Sueños.-
  #5 (permalink)  
Antiguo 20/03/2007, 05:52
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Re: Recogida de datos

Gracias richard20, no había caido en eso. Así que al final lo haré en ambos sitios, en la recogida y en la consulta (para posibles errores en la conexión)
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 14:24.