Avatar billede muddi Praktikant
12. august 2001 - 23:07 Der er 3 kommentarer og
1 løsning

Søg på flere kriterier

Jeg vil gerne kunne søge i flere søjler i min database. Det skal være muligt at bruge \"wild-carts\", så søgeordet kan være en del af et længere ord...
F.eks. hvis man søger på \"rød\", så skal man både få vist \"Blovstrød\" og \"Søllerød\".

Mit bud på en SQL-forespørgsel ville være:

strSQL = \"Select * From tbl_products Where Product_Id = \'%\" & strSearch & \"%\'\"

Men det virker sgu ikke... :o(
Avatar billede stigc Nybegynder
12. august 2001 - 23:15 #1
strSQL = \"Select * From tbl_products Where Product_Id LIKE \'%\" & strSearch & \"%\'\"
Avatar billede muddi Praktikant
12. august 2001 - 23:18 #2
Tak for hjælpen!
Avatar billede sth Novice
12. august 2001 - 23:21 #3
jeg bruger denne:
hvor html filen heder: search.htm



<html>

<head>

<title>Fritekst søgning</title>
</head>

<body>

<form method=\"POST\" action=\"search.asp\">
  <p><input type=\"text\" name=\"Keyword\" size=\"20\"><br>
  <input type=\"submit\" value=\"Søg\" name=\"Action\"></p>
</form>
</body>
</html>




og så er der en fil der heder:search.asp



<% Response.Buffer = True %>
<html><head>
<title>Søgeresultat</title>
</head><body>

<%
\' Henter værdien fra soeg.htm
strKeyword = Trim(Request.Form(\"Keyword\"))

If Len(strKeyword) = 0 Then
    \' Hvis der ikke er skrevet i feltet
    Response.Clear
    Response.Redirect(\"search.htm\")
Else
    \' Hvis der er skrevet i feltet
    strKeyword = Replace(strKeyword,\"\'\",\"\'\'\")
End If

\' Opbygger en dynamisk SQL streng
strSQL = \"SELECT ID, id, beskrivelse, problem_mulighed, info, henvisning FROM fb_rap WHERE\"
strSQL = strSQL & \" (beskrivelse LIKE \'%\" & strKeyword & \"%\')\"
strSQL = strSQL & \" OR (problem_mulighed LIKE \'%\" & strKeyword & \"%\')\"
strSQL = strSQL & \" OR (info LIKE \'%\" & strKeyword & \"%\')\"
strSQL = strSQL & \" OR (henvisning LIKE \'%\" & strKeyword & \"%\')\"

\' Skaber DSNLess forbindelse til DBen
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\"database.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
    Response.Write \"<p>Søgeresultat</p>\"
    Response.Write \"<table border=1>\"
    Response.Write \"<tr><th>ID nr</th><th>Adresse</th><th>Adresse</th><th>By</th><th>Beskrivelse</th></tr>\"
    Do While Not rs.EOF
        Response.Write \"<tr><td>\" & rs(\"id\") & \"</td>\"
        Response.Write \"<tr>\" & rs(\"beskrivelse\") & \"</td>\"
        Response.Write \"<td>\" & rs(\"problem_mulighed\") & \"</td>\"
        Response.Write \"<td>\" & rs(\"info\") & \"</td>\"
        Response.Write \"<td>\" & rs(\"henvisning\") & \"</td></tr>\"
        rs.MoveNext
    Loop
    Response.Write \"</table>\"
Else
    \' Hvis der ikke er fundet poster på søgningen
    Response.Write \"<p>Der er ikke fundet noget på denne søgning</p>\"
End If

\' Rydder op efter os
myConn.Close
Set myConn = Nothing
%>

</body></html>
Avatar billede sth Novice
12. august 2001 - 23:22 #4
koden skal selvf. lige rettes så den passer til din db :)
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