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

problemas con buscador

Estas en el tema de problemas con buscador en el foro de ASP Clásico en Foros del Web. Necesito ayuda urgente con un buscador que estoy creando en mi web. Es un buscador externo (para la web) pero al poner la palabra y ...
  #1 (permalink)  
Antiguo 09/03/2004, 12:21
Avatar de tork  
Fecha de Ingreso: noviembre-2003
Ubicación: Veracruz
Mensajes: 153
Antigüedad: 20 años, 7 meses
Puntos: 0
problemas con buscador

Necesito ayuda urgente con un buscador que estoy creando en mi web. Es un buscador externo (para la web) pero al poner la palabra y darle buscar, me aparece el siguiente error:

Error de compilación de Microsoft VBScript error '800a03f6'

Se esperaba 'End'

/tres/buscar.asp, line 34

Quisiera sabe si alguien sabe como resolverlo, el codigo del buscador es el siguiente:

<%@ Language="vbscript"%>
<html>
<head>
<title>Resultados de la busqueda: <%=request.form("key")%></title>
</head>
<body>
<%
Set conexion = Server.CreateObject("ADODB.Connection")
basedatos = Server.MapPath(".../tres/buscar.mdb")
conexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & basedatos & ";"
If Request.form("key") = "" Then
response.write("<center><font face=arial, verdana size=4 color=#0a5168>Debe ingresar una palabra antes de buscar.</font></center>")
Else
SearchSQL = "SELECT * FROM [Contenidos]" & " WHERE [Cuerpo] LIKE '%" & Request.form("key") & "%'"
Set registros=conexion.Execute(SearchSQL)

If registros.BOF And registros.EOF Then
response.write("<center><font face=verdana, helveltica size=4 color=#0a5168>No se han encontraron resultados.</font></center>")
Else
If Not registros.BOF Then
While Not registros.EOF
Do While Not registros.EOF %>

<%=registros("Cuerpo")%>

<% registros.MoveNext
Loop
Wend
End If
End If


registros.Close
conexion.Close

%>
</body>
</html>

Gracias de antemano!
  #2 (permalink)  
Antiguo 09/03/2004, 12:30
Avatar de kalijunfan  
Fecha de Ingreso: febrero-2004
Ubicación: Montevideo, Uruguay
Mensajes: 96
Antigüedad: 20 años, 3 meses
Puntos: 0
Estimado tork, esto te pasa porque te olvidaste de cerrar el primer if, además para qué estás usando un while y un do while al mismo tiempo? Te recomiendo que dejes tu código así:

<%@ Language="vbscript"%>
<html>
<head>
<title>Resultados de la busqueda: <%=request.form("key")%></title>
</head>
<body>
<%
Set conexion = Server.CreateObject("ADODB.Connection")
basedatos = Server.MapPath(".../tres/buscar.mdb")
conexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & basedatos & ";"
If Request.form("key") = "" Then
response.write("<center><font face=arial, verdana size=4 color=#0a5168>Debe ingresar una palabra antes de buscar.</font></center>")
Else
SearchSQL = "SELECT * FROM Contenidos WHERE Cuerpo LIKE '%" & Request.form("key") & "%'"
Set registros=conexion.Execute(SearchSQL)

If registros.BOF And registros.EOF Then
response.write("<center><font face=verdana, helveltica size=4 color=#0a5168>No se han encontraron resultados.</font></center>")
Else
If Not registros.BOF Then
While Not registros.EOF %>

<%=registros("Cuerpo")%>

<% registros.MoveNext
Wend
End If
End If

End if 'Este es el end if que te faltaba

registros.Close
conexion.Close

%>
</body>
</html>

Probalo, ahora debería de andar.

  #3 (permalink)  
Antiguo 10/03/2004, 10:18
Avatar de tork  
Fecha de Ingreso: noviembre-2003
Ubicación: Veracruz
Mensajes: 153
Antigüedad: 20 años, 7 meses
Puntos: 0
Muchisimas gracias kalijunfan ya con el codigo que me diste sirvio todo! Gracias!
__________________
... www.kaomix.com ... :aplauso:
kao0 power
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 23:13.