Avatar billede vester Novice
23. januar 2003 - 22:32 Der er 7 kommentarer og
1 løsning

Søgning på flere ord?

Jeg har dette script, som jeg gerne vil have til at virke, så man kan søge på flere ord.


If Len(strKeyword) = 0 Then
    Response.Clear
    Response.Redirect("Forum.asp")
Else
    strKeyword = Replace(strKeyword,"'","''")
End If

' Opbygger en dynamisk SQL streng
strSQL = "SELECT Id, Dato, Titel, Indlaeg FROM Poster WHERE"
strSQL = strSQL & " (Titel LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Indlaeg LIKE '%" & strKeyword & "%')"

' Skaber DSNLess forbindelse til DBen
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath ("../db/Forum.mdb")
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN

' Skaber et recordset udfra SQL strengen
Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then
    ' Hvis der er fundet poster på søgningen
Do While Not rs.EOF
Avatar billede hossein Nybegynder
23. januar 2003 - 22:44 #1
du skal bruge split funktion. efter du har "split" strKeyword så har du et array, også skal du bruge for... ubound(aryKeyword) også din sql sætning
Avatar billede hossein Nybegynder
23. januar 2003 - 22:53 #2
Fik du ideer?
Avatar billede vester Novice
23. januar 2003 - 22:55 #3
Nej, ikke rigtigt.,
Er det noget du kan hjælpe med?
Avatar billede hossein Nybegynder
23. januar 2003 - 23:01 #4
30 point er for lidt. temp joinword skal du ikke bruge. og % i stedet for *
sådan:

If instr(strKeyWords, " ") <> 0 Then
aryStrKeyword = split(strKeyword, " ")

SQLQ = SQLQ & "(SELECT ID FROM ASAR WHERE"
        For i = 0 To UBound(aryKeywords)
        SQLQ = SQLQ & tempJoinWord & "(" & _      'Ret og slet her
            "BookName LIKE '*" & aryKeywords(i) & "*' OR " & _
            "Content LIKE '*" & aryKeywords(i) & "*' OR " & _
            "SiteURL LIKE '*" & aryKeywords(i) & "*' OR " & _
            "SiteKeywords LIKE '*" & aryKeywords(i) & "*')"
            tempJoinWord = " AND "    'slet den           
        Next
            SQLQ = SQLQ & ")"
end if
Avatar billede vester Novice
23. januar 2003 - 23:37 #5
Hvad er så nok`?
Avatar billede hossein Nybegynder
23. januar 2003 - 23:42 #6
oh, det er lige meget, håber du kan brug.
Avatar billede hossein Nybegynder
26. januar 2003 - 12:58 #7
30 er også ok?!
Avatar billede vester Novice
26. januar 2003 - 17:41 #8
Fint...

Har været offline siden fredag
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester