[PHP] Slimme zoekfunctie

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Beste allemaal,

Ik heb de volgende situatie: er moet een soort namendatabase komen, waarbij gebruikers zelf namen kunnen toevoegen. Maar als een gebruiker een spelfout maakt, mag die verkeerd gespelde naam natuurlijk niet in de database terecht komen. Daarom wil ik graag een systeem maken dat kijkt naar wat de gebruiker invoert, en dit vergelijkt met wat er al in de database staat, en vervolgens de gebruiker vraagt of hij niet een van de matches bedoelt. Bijvoorbeeld: Balkenende staat in de database, en de gebruiker vult Blakenende in. Dan moet het script gaan zoeken naar dingen die lijken op Blakenende, en Balkenende suggereren.
Ik dacht zelf aan een soort explode functie, waarna alle losse letters in combinaties vergeleken worden met wat er in de database staat. Ik heb alleen geen enkel idee hoe ik dit uit zou moeten voeren, en misschien is dit wel een verkeerde oplossing voor mijn probleem. Iemand enig idee?

BVD

Acties:
  • 0 Henk 'm!

  • Gonadan
  • Registratie: Februari 2004
  • Nu online

Gonadan

Admin Beeld & Geluid, Harde Waren
Kijk eens naar levenshtein en dergelijke functies.
Er zijn namelijk een aantal functies die het verschil tussen strings kunnen berekenen volgens een bepaald algoritme.

Dan kan je vanzelf bekijken welke woorden er erg dichtbij liggen. :)

similar-text en soundex zijn de andere opties.

[ Voor 92% gewijzigd door Gonadan op 15-05-2007 14:26 ]

Look for the signal in your life, not the noise.

Canon R6 | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8