webForumDet fria alternativet

problem med select i ett sök script

15 svar · 365 visningar · startad av Dashi

DashiMedlem sedan jan. 2005296 inlägg
#1

Har ett sök script på min sida som söker efter produkter men får inte det att funka som jag vill, använder access databas, jag har en input och en submit knapp som går vidare till nästa sida och visar resultat, det hela funkar men inte som det ska.

"SELECT * FROM artiklar where nr = '" & search & "' OR marke = '" & search & "' OR desc = '" & search & "' ORDER BY nr"

Kan man göra denna koden lite mindre eller lättare? vill att det ska funka såhär: om jag söker efter samsung så ska den söka igenom ALLA fält som finns i tabellen (finns där 4 fält ska den söka igenom dom, finns där 7 fält ska den söka igenom dom osså) och skriva ut de rader som inehåller sökordet, och det andra problemet med det hela är att om jag söker efter Samsung och fältet innehåller Samsung xlm2004, Samsung xlm2003 så får jag inga resultat, utan måste då skriva exakt antingen det ena eller det andra.. men jag vill att den ska visa båda om jag nu skulle söka efter samsung.

Mvh //Darek

LarsGMedlem sedan dec. 200012 464 inlägg
#2

För att hitta poster där någon kolumn innehåller en del av söksträngen.

sql = "SELECT * " & _
" FROM artiklar " & _
" where nr like '%" & search & "%'" & _ 
" OR marke like '%" & search & "%'" & _  
" OR desc like '%" & search & "%'" & _
" ORDER BY nr"

om jag söker efter samsung så ska den söka igenom ALLA fält som finns i tabellen

Det tror jag nog inte att du vill. De flesta tabeller innehåller kolumner som det inte är relevant att söka i. Vilka kolumner är får du koda för hand.

DashiMedlem sedan jan. 2005296 inlägg
#3

sql? jag kör ju access databas..

mvh //Darek

PoffeMedlem sedan apr. 20022 743 inlägg
#4

SQL är det språk man talar med databasen med...

DashiMedlem sedan jan. 2005296 inlägg
#5

vad trevligt.. det funka :P tack för hjälpen killar...

Mvh //Darek

DashiMedlem sedan jan. 2005296 inlägg
#6

jag kom på en sak med denna kod jag fick.. om produkten heter samsung-2000 och man då söker efter samsung 2000 eller samsung2000 så får man inget resultat ändå..

Mvh //Darek

PoffeMedlem sedan apr. 20022 743 inlägg
#7

Som du har nu så söker den på ord vars första eller sista del matchar. Vill du att man ska kunna söka på båda första och sista delen av ordet och så ska det kunna vara vad som helst i mellan får du använda wildcards i söktermen.

samsung%2000

Borde fungera.

DashiMedlem sedan jan. 2005296 inlägg
#8

Poffe skrev:

Som du har nu så söker den på ord vars första eller sista del matchar. Vill du att man ska kunna söka på båda första och sista delen av ordet och så ska det kunna vara vad som helst i mellan får du använda wildcards i söktermen.

samsung%2000

Borde fungera.

hur menar du? söktermen??

PoffeMedlem sedan apr. 20022 743 inlägg
#9

Söktermen är alltså det du söker på, i ditt fall "samsung 2000" eller "samsung2000".

Om du vill att den ska hitta träffar men tecken mitt i ordet som du inte känner till måste du sätta en wildcard (%) där också, alltså "samsung%2000 "

DashiMedlem sedan jan. 2005296 inlägg
#10

Poffe skrev:

Söktermen är alltså det du söker på, i ditt fall "samsung 2000" eller "samsung2000".

Om du vill att den ska hitta träffar men tecken mitt i ordet som du inte känner till måste du sätta en wildcard (%) där också, alltså "samsung%2000 "

okej du menar så..

jo det kan jag.. men det vet ju inte användaren om, och sidan gör jag ju så användarvänlig som möjligt och så att använder lätt kan använda det, även att värsta amatörerna ska kunna använda den, för där e ju inte många som vet att dom ska lägga till en wildcard, därför tänkte jag om man kunde lägga till något i koden som jag fick.. :)

PoffeMedlem sedan apr. 20022 743 inlägg
#11

Jo man vill ju alltid att det ska vara lätt använt, beskrev bara hur man gör för att få till det du vill.

Det du kan göra är att byta ut t.ex. mellanrum mot wildcards eller ha som här på wF t.ex. där man använder AND osv.

DashiMedlem sedan jan. 2005296 inlägg
#12

Poffe skrev:

Jo man vill ju alltid att det ska vara lätt använt, beskrev bara hur man gör för att få till det du vill.

Det du kan göra är att byta ut t.ex. mellanrum mot wildcards eller ha som här på wF t.ex. där man använder AND osv.

okej ska kolla sen om jag hittar någon lösning då.. annars får jag bara försöka att hålla mig borta från "-" tecknet, för det är det som gör det hela omständigt :)

PoffeMedlem sedan apr. 20022 743 inlägg
#13

Om det bara är det tecknet så kanske det enklaste är att, som sagt, bara ta bort det helt enkelt.

DashiMedlem sedan jan. 2005296 inlägg
#14

Poffe skrev:

Om det bara är det tecknet så kanske det enklaste är att, som sagt, bara ta bort det helt enkelt.

jo jag vet.. men det är ju snyggare att skriva:

Köp en Cd-r skiva, än att skriva Köp en cd r skriva

eller t.ex köp en cd-rom än att skriva köp en cd rom :)

PoffeMedlem sedan apr. 20022 743 inlägg
#15

Som sagt, finns många lösningar och du får helt enkelt hitta den som passa bäst för dina behov.

DashiMedlem sedan jan. 2005296 inlägg
#16

Poffe skrev:

Som sagt, finns många lösningar och du får helt enkelt hitta den som passa bäst för dina behov.

jo jag vet :)

128 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)