Vérifier les doublons lors d'une inscription
lywood
-
poukkid Messages postés 108 Statut Membre -
poukkid Messages postés 108 Statut Membre -
Bonjour,
je voudrais savoir comment vérifier lors d'une inscription si les informations que l'utilisateur donne n'existe pas déjà dans la base de donnée pour ne pas créer de doublons dans ma base de donnée...merci d'avance
mon code :
<?php
// connexion à la base
$db = mysql_connect('localhost', 'root') or die('Erreur de connexion '.mysql_error());
// sélection de la base
mysql_select_db('webmining',$db) or die('Erreur de connexion base de donnée'.mysql_error());
// réceptionner les valeurs (infos) du formulaire en POST
$prenom = $_POST['prenom'];
$nom = $_POST['nom'];
$adressemail = $_POST['adressemail'];
$login = $_POST['login'];
$password = $_POST['password'];
// Insertion des données dans la table "user".
$sql = "INSERT INTO user(id, nom, prenom, adressemail, login, password) VALUES('','$nom','$prenom','$adressemail','$login','$password')";
// on insère les informations du formulaire dans la table
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
// on affiche le résultat pour le visiteur
echo 'Your informations have been added.';
echo '<br />';
echo 'You can now log you on the : ';
echo "<a href='../index.php'>Welcome page</a>";
?>
je voudrais savoir comment vérifier lors d'une inscription si les informations que l'utilisateur donne n'existe pas déjà dans la base de donnée pour ne pas créer de doublons dans ma base de donnée...merci d'avance
mon code :
<?php
// connexion à la base
$db = mysql_connect('localhost', 'root') or die('Erreur de connexion '.mysql_error());
// sélection de la base
mysql_select_db('webmining',$db) or die('Erreur de connexion base de donnée'.mysql_error());
// réceptionner les valeurs (infos) du formulaire en POST
$prenom = $_POST['prenom'];
$nom = $_POST['nom'];
$adressemail = $_POST['adressemail'];
$login = $_POST['login'];
$password = $_POST['password'];
// Insertion des données dans la table "user".
$sql = "INSERT INTO user(id, nom, prenom, adressemail, login, password) VALUES('','$nom','$prenom','$adressemail','$login','$password')";
// on insère les informations du formulaire dans la table
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
// on affiche le résultat pour le visiteur
echo 'Your informations have been added.';
echo '<br />';
echo 'You can now log you on the : ';
echo "<a href='../index.php'>Welcome page</a>";
?>
A voir également:
- Vérifier les doublons lors d'une inscription
- Wetransfer gratuit sans inscription - Guide
- Verifier compatibilite windows 11 - Guide
- Doublons photos - Guide
- Twitter inscription - Guide
- Vinted inscription - Guide
5 réponses
Il faut définir plus précisément un doublon:
deux fois le même nom?
deux fois le même prénom + nom ?
plus précis encore ?
(rien qu'en france il existe des personnes qui ont le même prénom et le même nom)
Ensuite, en considérant qu'un meme couple <prénom, nom> n'a pas le droit d'avoir deux inscriptions, il faut procéder ainsi :
Après avoir "réceptionné les valeurs (infos) du formulaire en POST", il faut lancer une requête avec comme paramètre nom=$nom AND prenom=$prenom
A priori la requete devrait ressembler à:
SELECT * FROM user WHERE nom=$nom AND prenom=$prenom
(à intégrer correctement en php)
Puis tu vérifie si résultat de ta requete est bien vide (avec quelquechose comme if (!empty($result)) echo "utilisateur déja existant"; )
deux fois le même nom?
deux fois le même prénom + nom ?
plus précis encore ?
(rien qu'en france il existe des personnes qui ont le même prénom et le même nom)
Ensuite, en considérant qu'un meme couple <prénom, nom> n'a pas le droit d'avoir deux inscriptions, il faut procéder ainsi :
Après avoir "réceptionné les valeurs (infos) du formulaire en POST", il faut lancer une requête avec comme paramètre nom=$nom AND prenom=$prenom
A priori la requete devrait ressembler à:
SELECT * FROM user WHERE nom=$nom AND prenom=$prenom
(à intégrer correctement en php)
Puis tu vérifie si résultat de ta requete est bien vide (avec quelquechose comme if (!empty($result)) echo "utilisateur déja existant"; )
L'idée en fait c'est d'empêcher les utilisateurs d'avoir le même login et la même adresse mail.
merci d'avance
merci d'avance
Donc il suffit d'adapter très simplement :
donc en gros tu peux ajouter :
$result = mysql_query("SELECT * FROM user WHERE login=$login AND adressemail = $adressemail");
if (!empty(result)) echo "utilisateur déjà existant";
else... tout le reste
donc en gros tu peux ajouter :
$result = mysql_query("SELECT * FROM user WHERE login=$login AND adressemail = $adressemail");
if (!empty(result)) echo "utilisateur déjà existant";
else... tout le reste
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question