webForumDet fria alternativet

åäö tolkas som aao vid sökning ASP > MySQL

Databaser & SQL

2 svar · 850 visningar · startad av MM

Medlem sedan maj 2000138 inlägg
Frågan#1

Jag har en enkel sökfunktion i asp som ser ut så här.
Alla tecken skrivs ut korrekt, så UTF-8 är satt ordentligt såvitt jag kan se.

Däremot om jag söker på tex "jö" så listas både Jönsson och Johansson. Hur kommer jag förbi detta?

Sidan ligger på en Windowsmaskin men kopplar mot MySQL. Den kombinationen har funkat kanon hittills...
Se gärna exempel på sidan här:
http://cerise.nu/medlemmar.asp

Sök på person så ser ni vad jag menar.

SQLsträngen:

sql = "SELECT * FROM medlemmar WHERE fornamn like '%"&sokord&"%' OR efternamn like '%"&sokord&"%'"
Medlem sedan maj 2000138 inlägg
#2

Hittade lösningen på annat håll, men det kan ju vara intressant för fler:

sql = "SELECT * FROM medlemmar WHERE fornamn like '%"&sokord&"%' OR efternamn like '%"&sokord&"%' COLLATE utf8_swedish_ci"

COLLATE gör tydligen skillnad i sorteringen också, så att åäö kommer sist, och inte före a eller före o i sorteringen.

Medlem sedan juni 200032 967 inlägg
#3

... också flyttar vi från ASP.

mvh

271 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
143 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)