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

If Tabla.BOF And Tabla.EOF Then

Estas en el tema de If Tabla.BOF And Tabla.EOF Then en el foro de ASP Clásico en Foros del Web. Estimados amigos: Tengo un buscador; cuando introduzco un término que no contiene la base de datos, me aparece un mensaje [No se ha encontrada nada ...
  #1 (permalink)  
Antiguo 09/05/2003, 12:25
Avatar de emajesus  
Fecha de Ingreso: abril-2003
Mensajes: 278
Antigüedad: 21 años, 1 mes
Puntos: 1
If Tabla.BOF And Tabla.EOF Then

Estimados amigos:

Tengo un buscador; cuando introduzco un término que no contiene la base de datos, me aparece un mensaje [No se ha encontrada nada por ...] pero también me deja de cargar el resto de la página a partir de ese mensaje.

¿Qué debo hacer?

Os incluyo el código:

<%

Dim Conexion,Tabla
Set Conexion=Server.CreateObject("adodb.connection")
Set Tabla=Server.CreateObject("adodb.recordset")
'Conexion.Open "Driver={Microsoft Access Driver (*.mdb)}; " & "Dbq=" & Server.MapPath("base.mdb")

Conexion.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ= diccionario.mdb")


Dim Temp

Temp="Select * From Glosario Where UCase(palabra) like '%" & UCase(Request("palabra")) & "%' ORDER by Palabra"
Tabla.Open Temp, Conexion

If Tabla.BOF And Tabla.EOF Then
%>
<dl>
<div align="center">
<div align="left">
<dt><font face="Verdana" size="2" color="#0000FF">No se ha encontrado
nada por <strong><%=Request("palabra")%></strong> en la Base de Datos</font></dt>
</div>
</div>
</dl>
<%
Else
%>
<div align="center">
<table border="0" cellpadding="0" cellspacing="0" width="95%" bordercolor="#111111" style="border-collapse: collapse">
<% While Not Tabla.EOF%>
<tr>
<td width="26%" height="18">
<img border="0" src="ivalidar_r.gif" width="12" height="11"><font face="Verdana" size="2"> <b><%=Tabla.Fields("Palabra")%></b></font>
</td>
</tr>
<tr>
<td width="26%" height="18">
<font face="Verdana" size="2">Definición: <%=Tabla.Fields("Descripcion")%></font>
</td>
</tr>
<tr>
<td width="26%" height="18">
<dl>
<div align="center">
<div align="left">
<dt><font face="Verdana" size="1">Fuente: <%=Tabla.Fields("Url")%></font></dt>
</div>
</div>
</dl>
</td>
</tr>
<%
Tabla.MoveNext
Wend
Tabla.Close
Conexion.Close
End If
%>
</table>
</div>
  #2 (permalink)  
Antiguo 09/05/2003, 12:59
Avatar de fenix4  
Fecha de Ingreso: noviembre-2001
Ubicación: Caracas
Mensajes: 226
Antigüedad: 22 años, 6 meses
Puntos: 1
epale emajesus
la verdad yo no veo nada !!! veo que todo esta normal
yo hago mis busquedas muy similares, la diferencia es que el if la condicion es diferente
Código:
if autorizados.eof then
y te aconcejo que el

Tabla.Close
Conexion.Close

lo coloque despues del end if para que fincione para las dos condiciones
__________________
S.L.P.S.
  #3 (permalink)  
Antiguo 09/05/2003, 13:11
Avatar de emajesus  
Fecha de Ingreso: abril-2003
Mensajes: 278
Antigüedad: 21 años, 1 mes
Puntos: 1
El problema sigue existiendo.

La búsqueda la hace y determina que no hay registros que coincidan. Aparece un mensaje (No se ha encontrado nada por 'ots' en la Base de Datos) y se detiene la ejecución del resto del código 'html' y por ello me destroza el diseño de la página.

Necesito ayuda urgente.

Gracias a todos,

Emajesus

Tratando de aplicar 'el cuento de la vieja', he eliminado 'else' y me ejecuta bien el código.

¿Es correcto? ¿acertó la vieja por causalidad?

Un saludo,

Emajesus
  #4 (permalink)  
Antiguo 09/05/2003, 13:19
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 7 meses
Puntos: 0
sera porque el resto de codigo html que haz puesto esta dentro de la etiketa <%else%>?
  #5 (permalink)  
Antiguo 09/05/2003, 13:56
Avatar de emajesus  
Fecha de Ingreso: abril-2003
Mensajes: 278
Antigüedad: 21 años, 1 mes
Puntos: 1
Del código de arriba (primer mensaje) simplemente he eliminado:

<%
else
%>

Eliminé sólo. Y me funciona.

Por cierto, quiero insertar esta orden:

<%
if Request("palabra") = "" Then
response.write "No ha incluido ninguna palabra"
response.end
end if
%>

He probado a incluirla antes de If Tabla.BOF And Tabla.EOF Then pero me da error 500.

¿Qué hago?

Gracias,

Emajesus

¡Joderrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr!

El problema sigue existiendo ... Me equivoqué eliminando ELSE ... ahora me sale siempre ese mensaje ...

¿Qué hago? Vuelvo al comienzo.

Emajesus

¡Joderrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr!

El problema sigue existiendo ... Me equivoqué eliminando ELSE ... ahora me sale siempre ese mensaje ...

¿Qué hago? Vuelvo al comienzo.

Emajesus
  #6 (permalink)  
Antiguo 09/05/2003, 14:35
Avatar de fenix4  
Fecha de Ingreso: noviembre-2001
Ubicación: Caracas
Mensajes: 226
Antigüedad: 22 años, 6 meses
Puntos: 1
Probaste solo con " if autorizados.eof then"" y colocaste el Tabla.Close y Conexion.Close para esa parte????
__________________
S.L.P.S.
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 20:50.