jag har en sidan som jag postar "sökord" och en "url" til varsin kolumn idatabasen sedan har jag en sida där jag söker i " sökkolumnen" för att sedan få fram dom url som stämmer med sökorden ,det funkar bra men jag har märkt att det funkar bara att söka i den ordningen som sökorden ligger i databasen finns det tex : "cykel röd 2växlad herr" så kan jag inte söka på cykel och herr utan då måste jag ha med alla orden som även ligger emellan dom två , går det att göra nått åt detta?
query = "select * from links where sokord like '%cykel%herr%'"
Hittar alla poster där cykel följt av herr finns med. Dvs, ordningen mellan orden spelar roll.
Sen så kan du ju ha varianter på det
--
-- alla poster med antingen herr eller cykel
--
query = "select * from links where sokord like '%cykel%' or sokord like '%herr%'"
--
--alla poster med herr och cykel, oberoende av ordning
--
query = "select * from links where sokord like '%cykel%' and sokord like '%herr%'"
dim words,query,i,rs
words = split(request.form("sokord")," ")
query = "select * from lank where 1 = 1 "
for i = 0 to ubound(words)
query = query & "or kolumnen like '%" & replace(words(i),"'","''") & "%'"
next
SET RS = Con.Execute(query)
tar jag bort rs ifrån:
dim words,query,i,rs
------------------^
så funkar sidan men då får jag up alla "url" som ligger i databsen oavsett vad jag söker på.
dim words,query,i
words = split(request.form("sokord")," ")
query = "select * from lank where "
for i = 0 to ubound(words)
query = query & "kolumnen like '%" & replace(words(i),"'","''") & "%' or"
next
query = left(query,len(query-3))
SET RS = Con.Execute(query)
I och med att villkoret 1 = 1 var med så kommer man att alltid hitta alla poster.
dim words,query,i
if len(request.form("sokord")) > 0 then
words = split(request.form("sokord")," ")
query = "select * from lank where "
for i = 0 to ubound(words)
query = query & "kolumnen like '%" & replace(words(i),"'","''") & "%' or"
next
query = left(query,len(query)-3)
else
query = "select * from lank"
end if
SET RS = Con.Execute(query)
Jag hade satt parenteserna fel. Jag lade till en kontroll så att det fungerar även om man inte anger något sökord.