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

El buscador me muestra todos los registros

Estas en el tema de El buscador me muestra todos los registros en el foro de ASP Clásico en Foros del Web. Sí, en vez de mostrarme sólo lo que coincide, aunque la palabra no exista EN ABSOLUTO en la base de datos, me muestra todos los ...
  #1 (permalink)  
Antiguo 25/12/2002, 17:17
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 23 años, 3 meses
Puntos: 29
El buscador me muestra todos los registros

Sí, en vez de mostrarme sólo lo que coincide, aunque la palabra no exista EN ABSOLUTO en la base de datos, me muestra todos los registros. He aquí el código (http://www.webexperto.com/articulos/articulo.asp?cod=13)

<%
Set Conexion=Server.CreateObject("adodb.connection")
Set Tabla=Server.CreateObject("adodb.recordset")
Conexion.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("../*.mdb")&";"
'definimos las variables de busqueda
Rango=Request("Tipo")
If Rango="1" Then
'En la Tabla la palabra que buscamos
Temp="Select * From respuestas Where UCase([mensaje])='" & UCase(Request("palabra"))'"
Else
Temp="Select * From respuestas Where InStr(UCase([mensaje]),'" & UCase(Request("Criterio")) & "')>0"
End If
Tabla.Open Temp, Conexion
If Tabla.BOF And Tabla.EOF Then
%>
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #2 (permalink)  
Antiguo 25/12/2002, 19:35
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 23 años, 3 meses
Puntos: 1
No estara tomandote las variables como " ", es decir un espacio en blanco o un NULL?

Prueba con LIKE, en vez del =, eso hace que mejore la flexibilidad de las cadenas de busqueda.
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net
  #3 (permalink)  
Antiguo 25/12/2002, 19:44
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 23 años, 3 meses
Puntos: 29
listo muchas gracias! aunque se me olvidó de avisaros, ya se lo había puesto yo y ya lo he implementado en mi web (en el foro)
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #4 (permalink)  
Antiguo 25/12/2002, 20:39
Avatar de korev  
Fecha de Ingreso: diciembre-2002
Ubicación: Barcelona
Mensajes: 127
Antigüedad: 22 años, 4 meses
Puntos: 0
AHA-HAAAAAAAAAAAAAAAAA... para eso querías lo de contar palabras eh pillín?

Genial, me alegro de que te animes con un foro. Ya verás como aprenderás muchísimo asp.
Una cosa, acabo de ver que comentas a los usuarios que deben escribir la frase exacta. Dales la alegría de saber que no hace falta ahora que le metiste el 'like'... es que sino no lo usarán , no pueden adivinar el subject completo. Un buscador tiene puñetitas que no son complicadas pero hay que tenerlas en cuenta, ya las irás viendo.
En cuanto al foro, no te olvides de tomar la primera precaución de rigor: no dejar que te metan sql en cuanto les des un espacio para escribir.

Con respecto al código que ya te comentó Maestro, quisiera añadir que mejor que el request siempre lo acompañes de su correspondiente form o querystring. Te ahorrarás muchos problemas.
Otra cosa, métele la ubicación completa en el server.mappath (tipo /misbds/nombre.mdb). También es mejor.
__________________
on error... resume next
  #5 (permalink)  
Antiguo 26/12/2002, 07:27
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 23 años, 3 meses
Puntos: 29
El foro ya lo tengo hecho desde hace 3 meses! :) lo que pasa es que mis users me pidieron un buscador, y me animé a construir uno, aunque no sabía muy bien como hacerlo y tuve que recurrir a webexperto y a vosotros.

Muchas gracias a todos, ya está listo. Lo he puesto con el Like
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
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 00:24.