FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Medlem
|
Hej.
Jag håller på att skriva ett php-script som gör en sökning i en MySQL-databas. Saken är att sökningen skall ske i flera fält och kan ske med flera sökord samtidigt. Exempel: Tabellen medlemmar: Kod:
mnr förnamn efternamn adress tfn ---------------------------------------------------------------- 1 | Anders | Olsson | Kufgränd 4 | 012345678 2 | Gustaf | Andersson | Rusbacken 2A| 0701010101 - Om jag gör en sökning på "anders olsson" så returneras ingen post, fast det till fullo stämmer överens med mnr 1. Som jag har gjort nu så gör jag så här: - Delar upp söksträngen i alla sökorden. - För varje sökord ställer jag en fråga med WHERE-villkoret "LIKE '%säkordet%'" för varje fält i medlemstabellen. - Varje träff lägger jag in i en temporär tabell innehållandes mnr & träffar. - Lista sedan endast de rader som har flest antal träffar. Det är lite omständigt tycker jag, men finns det något lättare sätt att utföra denna operation på? Kanske direkt i MySQL? Förslag på metoder? |
||
![]() |
![]() |
|
|