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

Ayuda con Validacion en ASP

Estas en el tema de Ayuda con Validacion en ASP en el foro de ASP Clásico en Foros del Web. Gente, Tengo el siguiente codigo: <% Dim des__MMColParam des__MMColParam = (db.Fields.Item("TournID").Value) Dim des Dim des_numRows Set des = Server.CreateObject("ADODB.Recordset") des.ActiveConnection = MM_PokerSQL_STRING des.Source = "SELECT ...
  #1 (permalink)  
Antiguo 03/09/2004, 15:08
gcs
 
Fecha de Ingreso: enero-2004
Ubicación: Heredia, Costa Rica
Mensajes: 191
Antigüedad: 20 años, 5 meses
Puntos: 0
Ayuda con Validacion en ASP

Gente,

Tengo el siguiente codigo:

<%
Dim des__MMColParam
des__MMColParam = (db.Fields.Item("TournID").Value)
Dim des
Dim des_numRows

Set des = Server.CreateObject("ADODB.Recordset")
des.ActiveConnection = MM_PokerSQL_STRING
des.Source = "SELECT * FROM dbo.SetGoTourn WHERE ID = " + Replace(des__MMColParam, "'", "''") + ""

des.CursorType = 0
des.CursorLocation = 2
des.LockType = 1
des.Open()
des_numRows = 0
total = des.RecordCount
Response.Write(total)

if ((des.Fields.Item("Des").Value) = (des__MMColParam)) then
Response.Write(des.Fields.Item("Des").Value)
else
Response.Write("N/A")
end if
des.Close()
Set des = Nothing
%>

Si ven... estas ultimas lineas trato de hacer una validacion de que si no encuentra datos me despliegue el texto N/A... pero tal parece de que lo estoy haciendo mal, alguno me puede ayudar a ver que hice mal o bien decirme como puedo hacer dentro de una validacion que si no encuentra datos en la base de datos o el registro X enconces me despliegue un N/A como mensaje.

Gracias
  #2 (permalink)  
Antiguo 03/09/2004, 15:22
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Así:

Código:
if des.BOF AND des.EOF then
Response.Write("N/A")
else
'do while not des.EOF
Response.Write(des.Fields.Item("Des").Value) ' & "<br>"
'des.MoveNext
'Loop
end if
Y si "des" puede devolver más de un registro, quitá los comentarios para que muestre más de uno.
__________________
...___...
  #3 (permalink)  
Antiguo 03/09/2004, 15:40
 
Fecha de Ingreso: julio-2002
Ubicación: stgo rec
Mensajes: 438
Antigüedad: 21 años, 10 meses
Puntos: 3
Es mejor asi

if des.EOF then
Response.Write("N/A")
else
'do while not des.EOF
Response.Write(des.Fields.Item("Des").Value) ' & "<br>"
'des.MoveNext
'Loop
end if
__________________
Saludos
Leo
  #4 (permalink)  
Antiguo 03/09/2004, 15:50
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
No dudo que sea mejor, soy bastante desprolijo en mis scripts, pero me gustaría saber el por qué es mejor
__________________
...___...
  #5 (permalink)  
Antiguo 03/09/2004, 21:14
 
Fecha de Ingreso: julio-2002
Ubicación: stgo rec
Mensajes: 438
Antigüedad: 21 años, 10 meses
Puntos: 3
Bueno por que no es necesario preguntar por ambas propiedades para saber si un recordset viene o no con batos.

Siempre, si tu preguntas por la propiedad rs.eof inmediatamente despues que tu la abres un recordset, y esta es verdadera, es por que esta sin registros.

y otra cosa es que te ahorras codigo.
__________________
Saludos
Leo
  #6 (permalink)  
Antiguo 05/09/2004, 20:55
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
ah, ok. A mi me gusta preguntar por ambas a la vez "por si las moscas" y porque no es mucho más código ;)
__________________
...___...
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 22:05.