Avatar billede cpccorp Juniormester
31. december 2007 - 13:34 Der er 5 kommentarer og
2 løsninger

Sql søgestreng med LIKE og søgeordet har mellemrum

Hvad skal der stå efter LIKE i SQL-strengen hvid søgeordet både kan være enkelt ord eller et navn med mellemrum

Eks. Lars og Lars Hug
Avatar billede cwboy Nybegynder
31. december 2007 - 14:19 #1
WHERE Navn LIKE 'Lars%'
vil finde både Lars og Lars Hug (men også fx. Larsen)

WHERE Navn LIKE 'Lars %'
vil i eksemplet kun finde Lars Hug
Avatar billede cpccorp Juniormester
31. december 2007 - 14:53 #2
Hvis brugeren i søgefeltet skriver Lars Hug, så finder den jo ikke Lars Hug, hvad kan man gøre for at det kan lade sig gøre
Avatar billede The Real Yoda Juniormester
31. december 2007 - 16:13 #3
where Navn LIKE '%"&request.form("sogefelt")&"%'
finder det man skriver i søgefeltet.. på den måde det er skrevet

where Navn LIKE '%"&replace(request.form("sogefelt")," ","%")&"%'
finder både "Lars giver hug til ....." og "lars hug" og "lars hugger biler"
hvis man skriver lars hug
Avatar billede cpccorp Juniormester
31. december 2007 - 16:43 #4
Kan jeg ikke få til at virke
Avatar billede jansangill Nybegynder
01. januar 2008 - 12:16 #5
Så vis noget kode, så man måske kan afhjælpe problemet?
Avatar billede cpccorp Juniormester
01. januar 2008 - 14:05 #6
hey var en kodefejl, virker
Avatar billede cwboy Nybegynder
01. januar 2008 - 14:10 #7
Angående det med at bruge Request.Form("xxxxxx") direkte i din SQL-statement uden at behandle den først - det åbner for "SQL injection" - dvs. du giver en ondsindet (hacker) mulighed for at udføre kode på din SQL-server.

Du bør erstatte alle forekomster af Request.Form("xxxxx") med Replace(Request.Form("xxxxx"), "'", "''") for at formindske sandsynligheden.

Misbrug af ' til SQL injection er en meget simpel metode, som en hacker nok lærer i børnehaveklassen...
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