Vérifier si un émail existe déja dans la bdd
Fermé
rika122
Messages postés
13
Date d'inscription
jeudi 3 juillet 2014
Statut
Membre
Dernière intervention
7 juillet 2014
-
3 juil. 2014 à 13:25
rika122 Messages postés 13 Date d'inscription jeudi 3 juillet 2014 Statut Membre Dernière intervention 7 juillet 2014 - 7 juil. 2014 à 14:56
rika122 Messages postés 13 Date d'inscription jeudi 3 juillet 2014 Statut Membre Dernière intervention 7 juillet 2014 - 7 juil. 2014 à 14:56
A voir également:
- Savoir si une adresse mail existe
- Darkino nouvelle adresse - Guide
- Rechercher ou entrer l'adresse - Guide
- Yahoo mail - Accueil - Mail
- Créer une adresse mail hotmail - Guide
- Darkino : le grand site pirate change d'adresse et d'interface - Accueil - Services en ligne
3 réponses
ghFrankfurt
Messages postés
207
Date d'inscription
mardi 16 novembre 2010
Statut
Membre
Dernière intervention
10 décembre 2014
23
Modifié par ghFrankfurt le 3/07/2014 à 14:05
Modifié par ghFrankfurt le 3/07/2014 à 14:05
Bonjour,
Déjà dans le if, tu dois comparer $data['MAILDEB'] (le nom de la colonne) suivi d'un double égal à la variable $maildeb :
Au lieu de ($data=':maildeb')
Sinon encore mieux: Tu testes déjà si le mail existe avec ta requête sql. Donc s'il n'y a pas de résultat, fetch() retournera 0 => false. S'il en trouve ce sera un tableau avec du contenu => "true"
Déjà dans le if, tu dois comparer $data['MAILDEB'] (le nom de la colonne) suivi d'un double égal à la variable $maildeb :
if($data['MAILDEB'] == $MAILDEB)
Au lieu de ($data=':maildeb')
Sinon encore mieux: Tu testes déjà si le mail existe avec ta requête sql. Donc s'il n'y a pas de résultat, fetch() retournera 0 => false. S'il en trouve ce sera un tableau avec du contenu => "true"
if($req1->fetch())
Utilisateur anonyme
Modifié par le père. le 3/07/2014 à 14:05
Modifié par le père. le 3/07/2014 à 14:05
Bonjour
En plus des remarques de ghFrankfurt, que font toutes ces apostrophes et ce point dans ta requête préparée ? Il n'en faut pas :
Es-tu sûr que c'est un OR que tu veux dans ta condition, et non pas un AND ? Mais là, c'est toi qui vois en fonction de ton application.
Et pour ta seconde requête,
tu devrais aussi utiliser une requête préparée au lieu de mettre directement les variables sans les échapper.
Et tu insères 2 valeurs alors que tu n'indiques qu'un seul champ !
Et tu devrais surtout l'exécuter !
En plus des remarques de ghFrankfurt, que font toutes ces apostrophes et ce point dans ta requête préparée ? Il n'en faut pas :
$req1 = $connexion->prepare("SELECT MAILDEB FROM client WHERE MAILDEB = :maildeb OR TELDEB = :teldeb ");
Es-tu sûr que c'est un OR que tu veux dans ta condition, et non pas un AND ? Mais là, c'est toi qui vois en fonction de ton application.
Et pour ta seconde requête,
$req1="INSERT INTO client (MAILDEB)VALUES('".$MAILDEB."','" .$TELDEB. "')";
tu devrais aussi utiliser une requête préparée au lieu de mettre directement les variables sans les échapper.
Et tu insères 2 valeurs alors que tu n'indiques qu'un seul champ !
Et tu devrais surtout l'exécuter !
Utilisateur anonyme
3 juil. 2014 à 16:24
3 juil. 2014 à 16:24
Attention, tu sors ce message d'erreur même si l'email n'existe pas, il suffit que le téléphone y soit puisque tu as un OR dans ta condition comme je te l'ai déjà fait remarquer
rika122
Messages postés
13
Date d'inscription
jeudi 3 juillet 2014
Statut
Membre
Dernière intervention
7 juillet 2014
3 juil. 2014 à 16:27
3 juil. 2014 à 16:27
donc je vais mettre un AND comme tu as suggéré c'est ça?
parce qu'en fait j'utilise un email ou un numero te telephone pour s'identifier
je vais mettre AND et je te tiens au courant du résultat
parce qu'en fait j'utilise un email ou un numero te telephone pour s'identifier
je vais mettre AND et je te tiens au courant du résultat
rika122
Messages postés
13
Date d'inscription
jeudi 3 juillet 2014
Statut
Membre
Dernière intervention
7 juillet 2014
3 juil. 2014 à 16:30
3 juil. 2014 à 16:30
ça change rien finalement c'est vraiment bizarre je ne sais plus quoi faire??!!
3 juil. 2014 à 14:03
PHP est sensible à la casse donc "mail" et "Mail" ne seront pas identique.
Par défaut MySQL est insensible à la casse donc ses deux chaînes seront identiques pour lui.
3 juil. 2014 à 15:24
merci pour vos remarques,j'ai deja utilisé la condition pour vérifier si l'email existe mais c'est pareil ça ne fonctionne pas et pourtant avant il fonctionnait nickel je ne sais pas pourquoi ,voici le code
Modifié par ghFrankfurt le 3/07/2014 à 15:49
Après tu pourras adapter le code à tes besoins.
Modifié par rika122 le 3/07/2014 à 16:21
3 juil. 2014 à 16:32
Deux possibilités :
Tu envoies une mauvaise information depuis ton formulaire (vide ou fixe).
Tu insères une donnée (teldeb OU maildeb) déjà présent dans ta base de donnée.