Problème requête ne fonctionne pas en ligne
Résolu
bilouze
Messages postés
27
Date d'inscription
Statut
Membre
Dernière intervention
-
varfendell Messages postés 3259 Date d'inscription Statut Membre Dernière intervention -
varfendell Messages postés 3259 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai 1 requête qui fonctionnent en local mais pas en ligne. C' est une requête qui cherche une adresse e-mail dans la table :
$req = $bdd->prepare('SELECT id FROM membre WHERE email=:email');
$req->execute(array('email'=>$email));
if($req->rowCount()>0)
{
$valid = false;
$erreur = 'Cette adresse e-mail est déjà utilisée';
}
les autres requêtes fonctionnent, mais celle-ci ne fonctionne pas. Est-ce qu'il peut y avoir quelque chose dans la structure de la table en ligne qui puisse empêcher de faire une reqûete de comparaison comme celle-là ?
Merci de votre aide.
J'ai 1 requête qui fonctionnent en local mais pas en ligne. C' est une requête qui cherche une adresse e-mail dans la table :
$req = $bdd->prepare('SELECT id FROM membre WHERE email=:email');
$req->execute(array('email'=>$email));
if($req->rowCount()>0)
{
$valid = false;
$erreur = 'Cette adresse e-mail est déjà utilisée';
}
les autres requêtes fonctionnent, mais celle-ci ne fonctionne pas. Est-ce qu'il peut y avoir quelque chose dans la structure de la table en ligne qui puisse empêcher de faire une reqûete de comparaison comme celle-là ?
Merci de votre aide.
A voir également:
- Problème requête ne fonctionne pas en ligne
- Partager photos en ligne - Guide
- Mètre en ligne - Guide
- Comment ne pas apparaître en ligne sur instagram - Guide
- Formulaire en ligne de meta - Guide
- Comment ne pas apparaître en ligne sur facebook - Guide
4 réponses
Bonjour,
Elle me semble bizarre ta requete....
SELECT id FROM membre WHERE email=:email
sa serait pas plutot
SELECT id FROM membre WHERE email='email';
Elle me semble bizarre ta requete....
SELECT id FROM membre WHERE email=:email
sa serait pas plutot
SELECT id FROM membre WHERE email='email';
Tu dois surement utiliser un Framework PHP ou quelque chose parcequ'effectivement je ne connais pas la notation : [...]WHERE email=:email'
Donne nous un peu plus d'infos peut-être que.. Parceque la comme ca je vois pas du tout
Ou peut-etre en fait :
Donne nous un peu plus d'infos peut-être que.. Parceque la comme ca je vois pas du tout
Ou peut-etre en fait :
$req = $bdd->prepare('SELECT id FROM membre WHERE email=$email');
Salut, la requête n'a rien de bizarre c'est une requête préparée avec marqueur nominatif -:)
Comme cette requête ne fonctionnait qu'en local, je l'ai modifié un peu par :
$req = $bdd->prepare('SELECT id FROM membre WHERE email=:email');
$req->execute(array('email'=>$email));
$data = $req->fetch();
if($data['id']!=NULL)
{
$valid = false;
$erreur = 'Cette adresse e-mail est déjà utilisée';
}
et la miracle, ça fonctionne !
Euh oui j'avais oublié de dire ce qui ne fonctionnait pas, c'est que la requête ne trouvait pas d'email correspondant dans la table alors qu'il y en avait bien une.
Voilà, mais bon c'est réglé!
Comme cette requête ne fonctionnait qu'en local, je l'ai modifié un peu par :
$req = $bdd->prepare('SELECT id FROM membre WHERE email=:email');
$req->execute(array('email'=>$email));
$data = $req->fetch();
if($data['id']!=NULL)
{
$valid = false;
$erreur = 'Cette adresse e-mail est déjà utilisée';
}
et la miracle, ça fonctionne !
Euh oui j'avais oublié de dire ce qui ne fonctionnait pas, c'est que la requête ne trouvait pas d'email correspondant dans la table alors qu'il y en avait bien une.
Voilà, mais bon c'est réglé!