hey
hoe kan ik zorgen dat er in de db geen combinatie van dezelfde voor en achternaam staat..
dus mensen mogen wel dezelfde voornaam OF achternaam hebben maar niet precies dezelfde dus niet VOORNAAM en ACHTERNAAM en het liefst ook nog met bijbehoorende woonplaats..
dit is voor een bedrijfs index of iig iets in die richting..
je kan dus klant worden maar dan wel op die voorwaarden zodat als er iets fout gaat je niet 38 keer een brief krijgt thuisgestuurd
Dit kun je doen door een UNIQUE constraint aan te brengen op de velden voornaam en achternaam (en evt. woonplaats). De combinatie voornaam + achternaam zal dan altijd uniek zijn in de database.
Probeer jij dan een record toe te voegen waarvan de combinatie voornaam + achternaam al voorkomt in de database, dan zal je een foutmelding krijgen. Met mysql_errno() kun je het foutnummer opvragen dat in dit geval gelijk zal zijn aan 1062. Daar kun je dus weer op testen ;)
Beetje offtopic: Dezelfde voor- en achternaam is niet uniek (spreek uit ervaring), die controle zegt dus niks. Zelfs het toevoegen van de woonplaats geeft je niet de garantie dat het ondanks dezelfde voor- en achternaam én woonplaats, toch om 2 verschillende personen gaat. Ga maar eens zoeken op bv. Jan Jansen in Amsterdam...
hmmm
hoe kan k het dan het beste doen??
zal k het dan op straatnaam nummer postcode plaats doen..
plaats en straatnaam zou opzich met postcode overbodig moeten zijn maar altijd extra controleren hea =P
Je zou het zelfs op 1 adres kunnen hebben (vader en zoon met dezelfde naam komt nog weleens voor), dus ook toevoegen van adres/postcode biedt in dit geval geen oplossing.
Wat vaak al beter werkt is een gegeven waarvan je zeker bent dat iemand de enige is die dat gegeven heeft. Bijvoorbeeld email (ook niet waterdicht) of het Burger Service Nummer.
Of nog iets met geboortedatum en -plaats, nummer van identificatie, etc.
Zelfs dezelfde naam in eenzelfde gezin komt voor, al is dat slechts bij hoge uitzondering. Als je je geboortedatum ook opslaat zou ik een combinatie maken van 'voornaam, achternaam, adres, geb_dat'. 2 kinderen van een 2-ling hebben doorgaans niet dezelfde naam, dus die zou uniek moeten zijn.