fonction verif qui ne fonctionne pas

Par AaFrederic Husson, il y a 8 ans


j'ai fait une verification afin de savoir si un email existe dans la BDD et s'il me retourne 0 afficher une erreur

mais la ça fonctionne pas si ça me retourne 0 je n'ai pas l'erreur qui s'affiche

$req = $bdd->prepare('SELECT COUNT(mail) as count FROM membres WHERE mail=:email'); $req->execute( array( 'email' => $_POST['email'] )); $reponse = $req->fetch(); $total_mail = $reponse['count']; if ($erreur=='0' && $total_mail==0) { $affiche_erreur = 'Cet email n\'existe pas dans notre base de donnée'; $erreur++; }

2 réponses

Lartak, il y a 8 ans

Bonjour.
J'ai l'impression que tu cherches à comparer une valeur de type string avec un valeur de type int.
Pour information 0 et '0' sont deux valeurs différentes, je parle bien sûr pour ta variable $erreur.
Car si tu l'incrémentes avec $erreur++ la valeur d'origine de la variable ne peut être que de type int, soit 0 et non '0'.
Il est donc normal que tu ne rentres jamais dans la condition étant donné que la valeur de ta variable $erreur ne peut pas être égale à '0', soit à une valeur de type string.

AaFrederic Husson, il y a 8 ans

en fait j'ai cherché loin pour rien c'était juste un problème d'apostrophe dans le texte
j'utilise sweet alerte pour afficher mes erreurs