PHP et Mysql/mysql_query et php
Résolu
keurdange
Messages postés
816
Statut
Membre
-
keurdange Messages postés 816 Statut Membre -
keurdange Messages postés 816 Statut Membre -
Bonjour,
Je suis entrain de programmé un site dynamique et j'aimerais vérifier à l'inscription, et grâce au formulaire, qu'un email déjà enregistré ne puisse se réinscrire à nouveau. Mais, il existe un problème au niveau de mysql_query. En effet, je ne sais pas comment utilisé l'email saisi dans la requête. Ci-dessous, vous retrouverez ce que j'ai essayé comme code mais ça me donne des erreurs du type You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@yahoo.fr IN (SELECT email FROM info_membres)' at line 1
Voici mon code
$bdd_1=mysql_query('SELECT email FROM info_membres WHERE ' .$_POST['email']. ' IN (SELECT email FROM info_membres)') or die(mysql_error());
Je m'en remet à la communauté de commentcamarche. :(
Merci d'avance. :D
Dieu n'a fait qu'ébaucher l'homme, c'est sur terre que chacun se crèe
Je suis entrain de programmé un site dynamique et j'aimerais vérifier à l'inscription, et grâce au formulaire, qu'un email déjà enregistré ne puisse se réinscrire à nouveau. Mais, il existe un problème au niveau de mysql_query. En effet, je ne sais pas comment utilisé l'email saisi dans la requête. Ci-dessous, vous retrouverez ce que j'ai essayé comme code mais ça me donne des erreurs du type You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@yahoo.fr IN (SELECT email FROM info_membres)' at line 1
Voici mon code
$bdd_1=mysql_query('SELECT email FROM info_membres WHERE ' .$_POST['email']. ' IN (SELECT email FROM info_membres)') or die(mysql_error());
Je m'en remet à la communauté de commentcamarche. :(
Merci d'avance. :D
Dieu n'a fait qu'ébaucher l'homme, c'est sur terre que chacun se crèe
1 réponse
-
Bonjour,
Tout d'abord je te conseil d'utiliser PDO, c'est bien plus sécurisé et pas moins compliquer.
Et voila ce que ça donne pour ton problème en PHP-PDO.<?php /* Connexion Base de donnée en PDO */ try //Test la connexion { $bdd = new PDO('mysql:host=localhost;dbname=monsters','root',''); //connexion } catch (Exception $e) { die('Erreur : '.$e->getMessage()); // Si la connexion échoue, on renvoie un message d'erreur au lieu d'afficher le code php } $bdd->exec("SET CHARACTER SET utf8"); /* Étape de la selection de l'email en base de donnée */ $req = $bdd->prepare('SELECT email FROM info_membres WHERE email = ?'); $req ->execute(array($_POST['email'])); $resultats = $req ->fetch(); if ($_POST['email'] == $resultats['email']) { echo 'Adresse e-mail déjà utilisé'; } else { // Etape suivante } ?>