ho fatto così e sembra fungere
così mi manda in query tutte le parole formate da più de 3 lettere.codice:<% 'RICERCA in annunci search="parole da trovare e non sperare" min=3 set connA = server.createobject("adodb.connection") connA.open "driver={microsoft access driver (*.mdb)};dbq="&_ server.mappath("/forum/forum.mdb") sqlA = "select * from messaggi where idsezione <>'' AND" ArrSearch = Split(search) x = 0 for each Word In ArrSearch if len(word) > min then If Not x = UBound(ArrSearch) Then sqlA = sqlA & " messaggio like '%" & word & "%'AND" Else sqlA = sqlA & " messaggio like '%" & word & "%' " End If x = x + 1 Next set rsA = connA.Execute(sqlA) 'Controllo se non c'e' nessun dato (EOF=End Of File) If rsA.EOF=True Then response.write "Nessun risultato" Else Do Until rsA.EOF titolo=rsA("titolo") id=rsA("id") %>
ma mi rimane un ultimo problema
se la frase è per esempio così:
"pippo super grande tre"
L'ultima parola non viene letta perchè filtrata ma nel ciclo della query comunque risulta per cui la select mi termina con
sql="....messaggio like '% grande %' OR
e non si chiude
come fare?

Rispondi quotando