webForumDet fria alternativet
Logga in / Bli medlem

Söka bland flera kategorier

ASP

8 svar · 459 visningar · startad av Tonyboy

Medlem sedan jan. 200554 inlägg
Trådstart#1

Hej!

Jag har en kolumn i min produkt databas som kort och gott heter kategorier, tex kategori1, kategori2 osv.

Nu skulle jag i min sökfunktion vilja ha möjligheten att kunna välja i vilken av dessa kategorier som sökningen skall inefatta.

Jag har testat lite olika varianter men inte hittat ett bra sätt att åstadkomma detta på. Jag har inga problem med att välja ut olika kolumner i databasen att söka på men att söka bland olika kategorier i en kolumn har jag inte lyckats med.

Tack på förhand!

Medlem sedan dec. 200012 464 inlägg
#2

Hur menar du?

Har du lagrat flera värden, separerade med komma, i samma kolumn?

Medlem sedan jan. 200554 inlägg
#3

Hej Lars!

Nej, utan i kolumnen kategorier i min produkttabell (tblProdukter) så står det antingen tex bil, tillbehör osv. i kolumnen 'Kategori' för varje inlagd produkt.

Då vill jag att användaren skall kunna specifiera vilka kategorier som sökningen skall innefatta. Ett av dessa alternativ skall förstås även omfatta alla kategorier.

Medlem sedan dec. 200012 464 inlägg
#4

Jag antar att du har en drop-down med alla kategorier där användaren kan markera 0 eller flera värden

sql = "select <intressantaKolumner> from tblProdukter where 1 =  1 "
if  request.form("kategorier") <> "" then
   sql = sql & " and kategori in ('" &_
join(split(request.form("kategorier"),"','")) & "')"
end  if
Medlem sedan jan. 200554 inlägg
#5

Problemet verkar fortfarande att få in värdena av de olika kategorierna i sql-satsen. Observera att jag inte skall ha olika kolumner in i sql-satsen utan specifika värden från en kolumn dvs Kategorier.

Drop-down menyn ser ut enligt följande:

<select name="falt">
<option value="bil" name="falt">
<option value="tillbehor" name="falt">
<option value="reservdelar" name="falt">
</select>

Medlem sedan dec. 200012 464 inlägg
#6

Hur ser resten av koden ut?

Hur ser sql-satsen ut när du har satt ihop den?

Medlem sedan jan. 200554 inlägg
#7

Falt = Trim(Request.Form("falt"))

SQL = "Select * From tblProdukter Where " & Falt & " Like '%" & Request.Form("sokord") & "%' Order By Titel ASC"

Medlem sedan apr. 20031 660 inlägg
#8

HEJ!

Och den resulterande sql:en blir?

Du behöver inte skriva name="falt" i varje option, det räcker i select-taggen.

Medlem sedan jan. 200554 inlägg
#9

Problemet är att jag inte lyckas att få in värdena av de olika kategorierna till option-listan. Jag Måste på något sätt få tex option value="bil" att förstå att det värdet skall vara "bil' från kolumnen kategier i produkttabellen.

Jag vet hur jag kan ge värden som motsvarar olika kolumner i tabellen tex:

<% falt1 = "Artnr" %>

och i drop-down menyn skriver jag då
<option value="<%=falt2%>"

Vad jag inte lyckas med är att istället plocka upp de olika kategorierna i en enda kolumn som i detta fallet är 'Kategorier'.

261 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)