simenss Skrevet 10. februar 2008 Skrevet 10. februar 2008 (endret) Har nå funnet ut at mySQL har en svakhet når det kommer til fulltekstsøk og tegnet &. Om man for eksempel har en rad som inneholder ordet bøker (bøker) splitter indeksen ordet opp i to deler: b og oslash;ker. Fant denne tråden om emnet, men den såkalte "løsningen" hjalp ikke meg stort. Kom også over denne feilrapporteringen, men heller ikke her ble jeg stort klokere. Er det noen her som kan hjelpe? Opprinnelige post: Jeg kjører følgende spørring mot en tabell som inneholder to rader hvor `product_description` inneholder "bl& aring;b& aelig;r" (blåbær). Problemet er at når jeg kjører spørringen, returneres nesten alle radene i tabellen. SELECT * FROM `products` WHERE MATCH ( `product_address` , `product_description` , `product_tags` , `product_title` ) AGAINST ( '+bl& aring;b& aelig;r*' IN BOOLEAN MODE ) Misstenker at det kan ha noe med tegnet "&" eller ";" å gjøre, men har ikke nok kompetanse til å finne feilen. Noen som har en idé om hva som er feil, og kanskje en eventuell løsning? EDIT: Måtte legge til mellomrom ved "& aring;" og "& aelig;" fordi det kun ble vist som "å" og "æ". Endret 11. februar 2008 av simenss
ofredstie Skrevet 10. februar 2008 Skrevet 10. februar 2008 SELECT product_description FROM products WHERE product_description LIKE '%blåbær%';
simenss Skrevet 10. februar 2008 Forfatter Skrevet 10. februar 2008 (endret) Har endret første innlegg. Opprinnelig post: Takk for svar ofredstie, men det er ikke løsningen. Måtte endre posten min å legge til mellomrom ved "& aring;" og "& aelig;" fordi det kun ble vist som "å" og "æ". Endret 11. februar 2008 av simenss
blackbrrd Skrevet 11. februar 2008 Skrevet 11. februar 2008 (endret) Problemet ditt er vel at & ikke regnes som tekst men som tegn på lik linje med ! ? . , etc. Det hadde ikke hjulpet mye hvis den ikke delte ordrene på & heller. Hvis du søker etter bøker skriver man vanligvis bøker, ikke bøker med html-encodet ø. Foreslår at du lagrer dataene i databasen din uten html-encodete bokstaver. Hvis du bruker unicode så skal det ikke være noe problem med at tegnsettet du har valgt ikke støtter bokstavene du skal lagre. Endret 11. februar 2008 av blackbrrd
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå