Problema con LUKE search

tesoteso

Nuovo Utente
24 Gen 2008
1
0
0
Salve a tutti,
ho utilizzato il motore di ricerca che fece a suo tempo lukeonweb per la ricerca all'interno di un database access, e funziona alla GRANDE! (come sempre luke! :fonzie:), ma solo se la ricerca la faccio in un solo campo, quindi:
nel DB c'è una tabella "news" con alcuni campi tra cui "titolo", "stralcio" e "descrizione" all'interno dei quali vorrei far eseguire la ricerca quindi ho provato a modificare lo script in questo modo (in rosso l'aggiunta):

// inizio codice ---------------------------------------------------
<%@LANGUAGE = JScript%>
<%
Response.Buffer = true;
var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("/mdb-database/sam_db.mdb"));
var testo = new String(Server.HTMLEncode(Request.Form("cerca")));
var r_testo = testo.replace(/'/g,"''");
var cerca = r_testo.split(" "); // Tutte le parole chiave devono essere separate da uno spazio vuoto
var sql = "SELECT * FROM news WHERE ";
for (var i=0; i<cerca.length; i++)
{
if (i > 0) sql += " AND";
sql += " titolo LIKE '%" + cerca + "%' OR stralcio LIKE '%" + cerca + "%' OR descrizione LIKE '%" + cerca + "%'";
}
sql += " ORDER BY data DESC";
var Mostra = Cn.Execute(sql);
%>
// fine codice -----------------------------------------------------

il problema sta nel fatto che se nel form di ricerca inserisco due parole mi visualizza tra i risultati tutti i record dove c'è almeno una parola ed io vorrei visualizzasse solo quelli dove sono presenti tutte le parole, e successivamente mi servirebbe anche l'opzione frase esatta.
Nel ringraziarvi per l'aiuto che mi vorrete dare vi saluto caramente :byebye:

P.S. per LukeOnWeb: all'interno del tuo sito non funzionano più i collegamenti ai download degli script.
 

Discussioni simili