Verifier si un email existe deja en bdd

Eléphant du PHP | 372 Messages

23 févr. 2015, 21:33

Bonjour à toutes et a tous, je me retourne vers vous afin d'ameliorer mon formulaire, ce dernier marche très bien,
j'aimerais cependant rajouter une vérification si l'email qu'a saisie l'utilisateur n'existe pas déjà en bdd afin d'éviter les doublons;

Voici un extrait de mes verifications:
$erreurs = array();   //tableau contenant des messages d'erreurs

if(!empty($_POST)) {//soumission du formulaire
  
   //Verification pseudo
  if(empty($_POST['pseudo'])) {
   $erreurs['pseudo'] = 'Renseigner un pseudo';
  }
 
 	//Verification du champ email( on vérifie si le champ n'est pas vide )
  if(!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#",$_POST['email'])){
	$erreurs['email'] = "Veuillez verifier la saisie de votre e-mail";
	}

  
   //Verification email
  if(empty($_POST['email'])) {
    $erreurs['email'] = 'Renseigner un adresse email';
  }

 // et ca continue ......

et coté requete :
// Insertion
		$req = $bdd->prepare('INSERT INTO user ( pseudo, email, password, date_inscription) VALUES( :pseudo, :email, :password, CURDATE())');
		
		$req->execute(array(
				  'pseudo'=>$_POST['pseudo'],
				  'email'=>$_POST['email'],
				  'password'=>$password
			)) or die('Problème lors de l\'insertion');
			
			echo '<p>Merci votre inscription.</p>';

Mammouth du PHP | 688 Messages

23 févr. 2015, 22:08

vu que tu sais faire une requete d'insertion de données avec pdo, tu dois savoir faire une requete de recherche de la présence de l'email dans la table, et selon le résultat, faire l'insert ou non.

ViPHP
xTG
ViPHP | 7331 Messages

23 févr. 2015, 22:09

Et qu'as-tu essayé de faire ? Code PHP ? Requête SQL ?