geen dubbele naam
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
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$sql = "SELECT * FROM table WHERE voornaam='".$var."' AND achternaam='".$var."'";
$result = mysql_query($sql)
if (mysql_num_rows($result) > 0)
{
echo "Naam bestaat al" ;
}
?>
$sql = "SELECT * FROM table WHERE voornaam='".$var."' AND achternaam='".$var."'";
$result = mysql_query($sql)
if (mysql_num_rows($result) > 0)
{
echo "Naam bestaat al" ;
}
?>
Iets van deze strekking?
Gewijzigd op 01/01/1970 01:00:00 door Jacco Engel
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 ;)
unique (voornaam, tussenvoegsel, achternaam, woonplaats)
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...
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
Jan Janssen Sr en Jr op hetzelfde adres... sja probeer het te tackelen op IP of IETS unieks
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.
Elwin
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.
wes schreef op 12.03.2007 10:45:
En Jan Janssen sr. en jr. op hetzelfde adres hebben een ander IP-adres? ;)Jan Janssen Sr en Jr op hetzelfde adres... sja probeer het te tackelen op IP of IETS unieks
Elwin
Wat dacht je van email adres?
gewoon sofinummer en creditcardnummer laten invoeren. klaar :))
Dus als Jan Janssen sr. en jr. op hetzelfde adres nou nog eens de computer en e-mail delen? Juist, dan hang je weer.
Ik weet het, het zijn maar net toevalligheden, maar het is mogelijk.
Elwin
Jacco schreef op 12.03.2007 10:48:
Lijkt mij de beste oplossing!Wat dacht je van email adres?
Ben alleen niet helemaal objectief, deze eis stel ik namelijk ook... ;)
Quote:
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
Mischien een fout hersenspinsel :
Je maakt 2 tabelen.
_____
namen
user_id
achternaam
tussenvoegsel
voornaam
leeftijd
adres_id
___________
Adressen
Adres_id
straat
huisnummer
postcode
woonplaats
Dan controleer je of het adres al in de database staat. Als dit het geval is kun je de nieuwe persoon toevoegen met het bestaande adres id. Op die manier hou je alleen unieke adressen in je table terwijl er wel meerdere gebruikers op 1 adres kunnen zitten.
Zoals ik al aangaf. Gewoon even een hersenspinsel. Mischien kun je er iets mee
..::Typo's voorbehouden::..
wes schreef op 12.03.2007 10:53:
gewoon sofinummer en creditcardnummer laten invoeren. klaar :))
Ik denk niet dat mensen zomaar even die gegevens gaan invoeren op een random site ;)
Je hebt wel gelijk voor wat normalisatie betreft. Het is dan wel een goed idee, het is alleen maar de vraag in hoeverre je daar voordeel uit zal halen, omdat het niet vaak voor zal komen dat er 2 accounts op hetzelfde adres zullen zijn bij een doorsnee site.
Daar ben ik het mee eens. En TS heeft het zelf ook al min of meer aangegeven. Dit is wel de makkelijkste manier om dubbele adressen te voorkomen
Jacco schreef op 12.03.2007 12:25:
Klopt, maar wat is nu het probleem met een dubbel adres? Daarnaast mag je nog eens kijken wat de kans is op een dubbel adres.Daar ben ik het mee eens. En TS heeft het zelf ook al min of meer aangegeven. Dit is wel de makkelijkste manier om dubbele adressen te voorkomen
Het lijkt mij sterk je dat (grote) financiele risico's loopt met dubbele adressen.
Voor hotmail enzo kan het wel degelijk lonen om het op zo'n manier te doen, omdat ze dan bijv 5 gezinsleden hebben die allemaal een hotmail adres hebben, en dat komt honderden / duizenden of weet ik veel hoe vaak voor. Dan loont zoiets, als je een doorsnee site hebt worden vaak niet zoveel mensen lid dat je heel veel redundante informatie krijgt.