|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : décembre 2006 Messages : 65 ![]() |
Bonjour à tous !
Voila mon problème : Je suis en train de créer un espace membre pour mon site. J'ai fait un formulaire d'inscription avec javascript et jquery. Lorsqu'un utilisateur renseigne les différents champs, avec jquery je fais 2 appels ajax pour vérifier si le login ou l'email ne sont pas déjà pris grâce à un fichier php qui accède à ma base, puis si c'est ok je valide l'inscription et je fais une nouvelle requête ajax qui ajoute le nouvel utilisateur. Mon problème, c'est que lorsque l'utilisateur renseigne les champs de manière correct, tout se déroule bien et l'entrée en base de donnée se fait correctement, mais si l'utilisateur valide une 2 ème fois le formulaire, il refait une entrée en base ! J'utilise une variable "valid" qui est à false si jamais lors de la vérification du pseudo ou du mail est déjà en base.* J'ai analysé la page avec firebug et la, à ma grande stupéfaction, mon if(valide==true){faire la requete ajax pour entrer le nouvel utilisateur} ne fonctionne pas ! (voir la capture d'écran). Alors que la variable "valid est égale à false, il entre tout de meme dans le if et fait la requete ajax ! Dans la capture d'écran j'ai laissé mon curseur sur la variable "valid" afin de montrer qu'elle est bel et bien à false et j'ai mis un point d'arret dans le if... ma question est donc la suivante : Pourquoi il entre quand meme dans le if ? Merci de votre aide |
|
|
00
|
|
|
#2 |
![]() ![]() Daniel HagnoulÉtudiant perpétuel Inscription : février 2009 Messages : 3 221 ![]() |
Bonsoir
Et avec if (valid === true) ?
__________________
FAQ jQuery Mon cahier d’exercices sur jQuery & CoSi un message vous a aidé ou vous semble pertinent, votez pour lui ! ![]() |
|
00
|
|
|
#3 | |
|
Membre chevronné
![]() Fred Professeur des Ecoles Inscription : mai 2009 Messages : 503 ![]() |
Bonsoir,
Citation:
Es-tu sûr qu'il y a true comme tu le testes ? |
|
|
00
|
|
|
#4 |
|
Candidat au titre de Membre du Club
![]() Inscription : décembre 2006 Messages : 65 ![]() |
Désolé de la réponse tardive, pour répondre à vos questions oui daniel j'avais aussi éssayé le symbole de comparaison === pour vérifier aussi le type et j'avais le même résultat, et pour répondre à ta question micetf j'avais mis des points d'arrets sur firbug à chaque changement de cette variable, je l'ai surveillé du début du script et à tous ses changements...
J'ai du pallier à ce bug en reprenant tout mon code depuis le début... et maintenant tout marche En fait a travers ce poste je voulais savoir si cette histoire de if qui fonctionne pas, c'était pas un problème récurrent en fonction d'une situation mais apparemment non... ça restera un des mystères que seul mulder pourra résoudre je pense ^^ Merci de vos réponse en tout cas ! |
|
|
00
|
|
|
#5 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 807 ![]() |
Tu es bien sûr que valid contient le booléen false et non la chaine false ?
Parce que si tu affectes à valid le retour d'une requête AJAX, tu n'obtiendras pas un booléen.
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
10
|
|
|
#6 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : décembre 2006 Messages : 65 ![]() |
Non je n'affectais pas directement le retour de la requête AJAX à ma variable valid. Il y avait un test de type
Code :
Le problème c'est que j'ai repris tout mon code et que je n'ai plus cette érreur et comme j'ai effacé le fichier je peux plus faire de test dessus, c'est dommage cette erreur était vraiment à creuser... |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com