Bonjour tout le monde,
je suis en train de créer une table d'user mais j'ai un probleme!
Comment contrôler les doublons au niveau du mail ou du nom d'user par exemple?
merci d'avance
Bonjour tout le monde,
je suis en train de créer une table d'user mais j'ai un probleme!
Comment contrôler les doublons au niveau du mail ou du nom d'user par exemple?
merci d'avance
ben tu fais un select sur ce que tu veux inserer avant
si ca te retourne un enreg c est qu il y est deja
Bin en mysql direct j'y arrive aisement mais en php j'ai essayé ce code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 function controle_doublon($element, $table, $element_saisie) { $verif_res = mysql_query("SELECT $element FROM $table WHERE $element=\"$element_saisie\""); $verif = mysql_fetch_array($verif_res); if($verif==array()) { return true; } else { return false; }
le mail est unique donc pas de doublon. A moins que plusieur utilisateur utilisent la meme adresse. Pour ce qui est du nom, fais comme te l'a indique siddh.Envoyé par samjung
je pense que cela devrait fonctionner
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 function controle_doublon($element, $table, $element_saisie) { $verif_res = mysql_query("SELECT $element FROM $table WHERE $element=\"$element_saisie\""); $verif = mysql_fetch_array($verif_res); if(mysql_num_rows($verif) > 0) { return true; } else { return false; }
Merci pour les réponses!
maintenant j'ai:
Fatal error: Call to undefined function: my_sql_num_rows()
(désolé c'est peut-être un truc tout bête mais je suis pas encore gourou php )
mysql pas my_sql
t es surtout pas un gourou du copier coller :p
lol en effet chui surtout gourou pas malin là ^^;;
met un index unique aussi sur tes tables devant etre uniques !
mais pas sur un mot de passe!
si on trouve un mot de passe unique, suffit de tester les pseudo les plus courants...
si tu met un index unique, il faut verifier, lors de ton insertion si t'a pas une erreure, sit 'en a une tu recupere le errno et si c'est celui des doublon t'a tout bon
j'avais pense aussi a l'index unique, mais le probleme c'est le nom. Plusieur personnes peuvent avoir le meme prenom, nom.
Cela fonctionnerait pour l'email, mais ca oblige de recuperer l'erreur et de l'analyser pour ne pas faire l'action. Esst ce que sa fonction ne suffit pas?
quels doublons veut tu eviter alors?
si c'est le couple nom-prenom, tu peut aussi, mais la encore, tu peut avoir deux personnes avec le meme nom-prenom.
si, sa fonction suffit totalement
et comme il diarait :
je
Bin en faite je suis sur un gros projet et je cherche à créer une fonction générique que j'appelerais a chaque fois que l'utilisateur saisira une info!
mayday mayday j'ai encore une nouvelle erreur
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource
D'apres le code d'erreur ce serait sur cette ligne "if(mysql_num_rows($verif) > 0) "
desole j'ai fait une erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 function controle_doublon($element, $table, $element_saisie) { $verif_res = mysql_query("SELECT $element FROM $table WHERE $element=\"$element_saisie\""); if(mysql_num_rows($verif_res) > 0) { return true; } else { return false; }
Pour faire une requete sans doublon utilise distinct:
select distinct(email), nom_user etc.
Je sais que c'est pas exactement ton probleme vu que tu veux faire une fonction de controle, mais c'est utile a savoir
merci ca marche !!ayai je te nomme official php guru
merci, merci.Envoyé par samjung
[mode=maitre yoda] Gourou je ne suis, car aujourd'hui plein de choses j'ai appris ici[/mode=maitre yoda]
au fait pense a mettre le tag resolu ! merci
penses a mettre résolu sur le sujet.
Si tu as un autre probleme tu en fera un nouveau
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager