Zoeken naar meerdere woorden uit één string in verschillende velden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Christian Snijders

Christian Snijders

23/03/2024 09:00:28
Quote Anchor link
Goedemorgen,

Momenteel ben ik bezig met het maken van een zoekveld die in meerdere velden moet kunnen zoeken.
Het is de bedoeling dat ik mijn klanten kan zoeken in mijn database.

Echter weet ik niet hoe ik dat het beste aan kan pakken.

Op de volgende velden zou ik dus eigenlijk willen zoeken:

Voorbeeld met zoekterm: van Liere

Dan zou hij moeten zoeken op: `tussenvoegsel = 'van' en "`achternaam` = 'liere'"

Voorbeeld met zoekterm: 0000 AA

Dan zou hij moeten zoeken op: `postcode`= '0000'` en "`postcode_letters` = 'AA'"

De rest van het zoekveld lukt me wel, maar dit is echt het punt waar ik tegenaan loop.
Destijds heb ik mijn tabel zo gemaakt omdat ik belgische en nederlandse personen in mijn tabel heb staan en ik een bepaalde naamsvoering in correspondentie wilde houden en niet zoals belgische mensen zeggen Liere van en wij zeggen hier van liere.

Kan iemand mij hier toevallig mee op weg helpen?
Alvast bedankt!
 
PHP hulp

PHP hulp

03/12/2024 18:39:21
 
Ward van der Put
Moderator

Ward van der Put

23/03/2024 10:46:08
Quote Anchor link
Er bestaan maar een paar honderd tussenvoegsels. Daarvan komen de zeldzame (zoals het Franstalige du of de la) waarschijnlijk niet voor in je data, waardoor je in de praktijk een dataset hebt van hooguit enkele tientallen tussenvoegsels.

Je zou daarom een query met SELECT DISTINCT kunnen gebruiken die eerst een kleine array vult met unieke tussenvoegsels. Die kun je vervolgens gebruiken in een controle op individuele woorden in de zoekopdracht: komt een zoekwoord voor in de array, dan is het een tussenvoegsel; komt een zoekwoord niet voor in de array, dan is het omgekeerd dus geen tussenvoegsel.
 
Christian Snijders

Christian Snijders

28/03/2024 19:26:18
Quote Anchor link
Is er geen mogelijkheid om bijvoorbeeld als ik zoek op "van der achternaam" dat ik bijvoorbeeld dit krijg: $val1 = 'van' $val2 = der $val3 = achternaam en ik op basis daarvan zoek in de database?

Hoe ontleed ik een zin op die manier?
 
Jan R

Jan R

29/03/2024 07:19:20
Quote Anchor link
Misschien gewoon splitsen op spatie
 
Christian Snijders

Christian Snijders

29/03/2024 16:13:49
Quote Anchor link
Hoi Jan R,

Dat snap ik, maar weet je toevallig hoe die functie heet om zoiets te maken?
 
Adoptive Solution

Adoptive Solution

29/03/2024 16:38:45
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.