estimados...tengo el siguiente asunto..
tengo un metodo de busquedas por keywords...
en una página tengo un input dentro del cual pueden ingresar palabra claves separadas por comas (",") con lo cual yo busco en la base de datos por aquellos resultados que coincidan con las palabras...
el problema que tengo es que.. si vienen más de 1 palabra hace lo siguiente
recojo las variables...
las separo en un arreglo de acuerdo a las comas (arrVariables= split(variable, ",")
y luego hago un recorrido para hacer la consulta por cada una de las palabras...
osea
Código:
for i = 0 to ubound(arrKey)
key = trim(arrkey(i))
if sw <> 1 then
set rs=Server.CreateObject("ADODB.Recordset")
sql = "select extension, titulo, resumen, archivo, autor from kb_biblioteca, kb_keywords where kb_biblioteca.id_archivo = kb_keywords.id_tema and keyword like '%"&key&"%' and kb_biblioteca.extension <> '"&doc&"'"
rs.PageSize=TamPagina
rs.CacheSize=TamPagina
'Abro el recordset
rs.Open SQL, Conn, 1, 2
if not rs.eof then
rs.AbsolutePage=PaginaActual
' Abro el recordset
'Cuento las páginas
PaginasTotales=rs.PageCount
'Compruebo que la pagina actual está en el rango
if PaginaActual < 1 then
PaginaActual = 1
end if
if PaginaActual > PaginasTotales then
PaginaActual = PaginasTotales
end if
end if
if PaginasTotales=0 then
Response.Write("No se encontraron resultados para """)
response.write(mensaje&"""")
else
mientras no sea fin de recorset muetro los resultados
end if
loop
el problema es que si son dos o mas palabras.. asi encuentre o no rsultados los mensajes se repiten tantas veces como palabras haya ingresado...
por ejemplo : Seguridad, Soldadura, Sol
si no encontró registros....
"no se encontró un resultado para "Seguridad, Soldadura, Sol""
"no se encontró un resultado para "Seguridad, Soldadura, Sol""
"no se encontró un resultado para "Seguridad, Soldadura, Sol""
cuando lo que quiero es que lo haga una sola vez... me podrian ayudar a optimizar esta busqueda?? desde ya mil gracias...