Partage
  • Partager sur Facebook
  • Partager sur Twitter

Peut pas définir de variable dans une requête AJAX.

    25 juin 2010 à 21:43:30

    Bonjour, dès que j'essaye de créer une variable dans une requête AJAX, dès que je la test bah c'est comme si elle n'était pas défini.Voici mon code javascript.
    var userName = $('#pseudo').val();
    $.get('testPseudo.php', {'pseudo': userName}, function processResult(data, textStatus){
    if (data != '') {
    	var pseudo = $('#pseudo').val();
    	$('#pseudo').next('.error-message').next('.valid-message').hide().text('');
    	$('#pseudo').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
    	$('#pseudo').next('.error-message').show().text('Le pseudo ' + pseudo + ' a déjà été utilisé pour la création d\'un compte.');
    	$('#pseudo').val('');
    	valid = false;
    }
    else {
    	$('#pseudo').next('.error-message').next('.valid-message').show().text('Votre pseudo est valide.');
    	$('#pseudo').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
    	$('#pseudo').next('.error-message').hide().text('');
    								
    									
    }
    });
    

    Si le pseudo est disponible bah je ne peux définir aucune variable dans cette "zone".
    Comment faire ? :D
    • Partager sur Facebook
    • Partager sur Twitter
      26 juin 2010 à 1:15:40

      Nieh ? j'ai pas tout compris.
      • Partager sur Facebook
      • Partager sur Twitter
        26 juin 2010 à 12:07:32

        Pourrais-tu limiter ton code à la problématique actuelle ?
        Histoire que l'on teste depuis nos ordinateurs respectifs ^^
        • Partager sur Facebook
        • Partager sur Twitter
          26 juin 2010 à 12:35:03

          Quelle variable ? Bug à quelle ligne ?

          Si tu parles de valid = false; il faut que tu définisses ta variable avant le $.get() dans ton code ;) .

          Sans précisions personne ne pourra t'aider.
          • Partager sur Facebook
          • Partager sur Twitter
          Venez sur Zeste de Savoir, on est bien :-) . Mon tuto PHPSpec.
            26 juin 2010 à 13:35:11

            Oui en effet mon sujet n'était pas claire excusez moi donc voila e vous donne un lien pour tester : la remplissez tous les champs sauf le pseudo, puis faites "entrée" bon là ça affiche mal puis mettez comme pseudo lali (il est déjà pris) et là ça affiche bien alors que ça devrait afficher mal.
            Car au début j'ai mis valid = true; et à la fin j'ai mis :
            if(valid == true){
            alert('bien');
            }
            else{
            alert('mal');
            }
            pourtant après j'ai mis un return valid, qui change la page uniquement si tout et bien remplie et là si le pseudo est déjà pris bah il ne change pas bizard. :D
            • Partager sur Facebook
            • Partager sur Twitter
              26 juin 2010 à 18:13:13

              Alors déjà utilise un debuger JS. (chrome ou une extension firefox ou IE)
              utilise console.log() pour vérifier les valeurs des variables (ou utilise alert() à la limite, rien ne vaut la bonne vieille méthode).

              Je présume qu'ici c'est valid... Même si je ne vois pas pourquoi ça poserait problème là o_O .
              Utilise aussi dataType sur ton $.get(), précise que tu veux du texte.
              function processResult(data, textStatus){}
              

              Pour quoi pas mais j'étais habitué a voir des fonctions sans noms pour ces trucs là !


              Ajoute aussi une fonction pour gérer les erreurs, ceci suffirait amplement:
              function(retour){ console.log(retour); }
              
              • Partager sur Facebook
              • Partager sur Twitter
              Venez sur Zeste de Savoir, on est bien :-) . Mon tuto PHPSpec.
                5 juillet 2010 à 17:05:57

                Alors en fait la variable se déclare que si il y a une alert : même de si c'est alert('selkgfsegesgh'); la variable valid 'fonctionne' à nouveau normalement.
                • Partager sur Facebook
                • Partager sur Twitter
                  5 juillet 2010 à 19:20:46

                  Citation : Nek'

                  Alors déjà utilise un debuger JS. (chrome ou une extension firefox ou IE)



                  C'est pas comme si Firefox n'avait pas de console JS nativement :-°

                  @Kaha, fait voir tout ton code, sinon on ne s'en sortira pas.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    5 juillet 2010 à 23:14:48

                    Citation : Tiller

                    Citation : Nek'

                    Alors déjà utilise un debuger JS. (chrome ou une extension firefox ou IE)



                    C'est pas comme si Firefox n'avait pas de console JS nativement :-°


                    Et la console native elle gère console.log() ? (parce que la dernière fois que j'ai test firefox ça n'était pas le cas m'voyez ?)
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Venez sur Zeste de Savoir, on est bien :-) . Mon tuto PHPSpec.
                      6 juillet 2010 à 10:20:01

                      console.log non, mais alert() oui :D

                      J'suis pas sur que ie gère nativement console.log, si ?
                      • Partager sur Facebook
                      • Partager sur Twitter
                        6 juillet 2010 à 10:27:24

                        Citation : Tiller

                        J'suis pas sur que ie gère nativement console.log, si ?


                        C'est un troll ? J'ai jamais prétendu le contraire. Et tu rabaisses ton firefox au niveau d'IE là. Pas très fine ton argumentation...
                        Bref la discussion sur la praticité des navigateurs niveau debug s'arrête ici pour moi.

                        Kaharon c'est pas possible que ça ne se déclare qu'avec un alert, c'est résolu ou pas ?

                        Tiller son code on l'a sur la page de démo...
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Venez sur Zeste de Savoir, on est bien :-) . Mon tuto PHPSpec.
                          6 juillet 2010 à 11:36:00

                          Citation : Nek'

                          C'est un troll ? J'ai jamais prétendu le contraire. Et tu rabaisses ton firefox au niveau d'IE là. Pas très fine ton argumentation...



                          Oula t'y es pas du tout.

                          Citation : Nek'

                          Alors déjà utilise un debuger JS. (chrome ou une extension firefox ou IE)



                          Tu parles d'un débugger JS et d'une extension Firefox. Donc moi, première étape, je me dis :
                          - Il ne sait pas qu'il y a une console javascript sur Firefox

                          Ensuite tu me dis "oui mais elle fait pas console.log", donc moi je me dis :
                          - Il pense donc que console.log est présent sur IE.

                          C'est en rien un troll, car j'en absolument rien à faire du navigateur surtout que IE est entrain de dépasser (ou au moins rattraper.) Firefox actuellement (Cf IE9 Preview).

                          Bref.

                          Et la page de démo, j'avais pas vu le petit "la" en bleu ~

                          @Kaha: La page de démo est dead :/
                          • Partager sur Facebook
                          • Partager sur Twitter
                            7 juillet 2010 à 10:36:28

                            Voila le code JS :
                            $(function() {
                            				$("#envoyer").click(function(){
                            					valid = true;		
                            					
                            					if($('#pseudo').val() == '' ){
                            						$("#pseudo").next(".error-message").next(".valid-message").hide().text("");
                            						$("#pseudo").next(".error-message").next(".valid-message").next(".info-message").hide().text("");
                            						$("#pseudo").next(".error-message").fadeIn().text("Veulliez entrer votre pseudo.");
                            						valid = false;
                            					}
                            					else if(!$("#pseudo").val().match(/^[a-zA-Z0-9'é"'èçà_.-]+$/i)){
                            						$("#pseudo").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            						$("#pseudo").next(".error-message").next(".valid-message").hide().text("");
                            						$("#pseudo").next(".error-message").show().text("Caractère(s) invalide(s).");
                            						valid = false;
                            					}
                            					
                            					else if(!$("#pseudo").val().match(/^[a-zA-Z0-9'é"'èçà_.-]{4,17}$/i)){
                            						$("#pseudo").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            						$("#pseudo").next(".error-message").next(".valid-message").hide().text("");
                            						$("#pseudo").next(".error-message").show().text("Pseudo trop court ou trop long.");
                            						valid = false;
                            					}
                            					else{
                            						
                            							var userName = $('#pseudo').val();
                            							$.get('testPseudo.php', {
                            								'pseudo': userName
                            							}, function processResult(data, textStatus){
                            								if (data != '') {
                            									var pseudo = $('#pseudo').val();
                            									$('#pseudo').next('.error-message').next('.valid-message').hide().text('');
                            									$('#pseudo').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
                            									$('#pseudo').next('.error-message').show().text('Le pseudo ' + pseudo + ' a déjà été utilisé pour la création d\'un compte.');
                            									$('#pseudo').val('');
                            									valid = false;
                            								}
                            								else {
                            									$('#pseudo').next('.error-message').next('.valid-message').show().text('Votre pseudo est valide.');
                            									$('#pseudo').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
                            									$('#pseudo').next('.error-message').hide().text('');
                            									
                            									
                            								}
                            							});
                            						
                            					}
                            					
                            					if($('#mdp').val() == ''){
                            						$("#mdp").next(".error-message").next(".valid-message").hide().text("");
                            						$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            						$("#mdp").next(".error-message").fadeIn().text("Veulliez entrer votre mot de passe.");
                            						
                            						$("#mdp_verif").val('');
                            						
                            						valid = false;
                            						
                            						if($('#mdp_verif').val() != '' ){
                            								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            								$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre mot de passe.");
                            								valid = false;
                            							}
                            						else{
                            							$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            							$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            							$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                            						}
                            					}
                            					else if($('#mdp').val() == $("#pseudo").val() ){
                            						$("#mdp").next(".error-message").next(".valid-message").hide().text("");	
                            						$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            						$("#mdp").next(".error-message").fadeIn().text("Votre mot de passe doit être différent de votre pseudo.");
                            						
                            						$("#mdp_verif").val('');
                            						
                            						valid = false;	
                            						if($('#mdp_verif').val() != '' ){
                            								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            								$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre mot de passe.");
                            								valid = false;
                            						}	
                            						else{
                            							$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            							$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            							$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                            						}
                            					}					
                            					else if(!$("#mdp").val().match(/^[a-zA-Z0-9'_.-]+$/i)){
                            						$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            						$("#mdp").next(".error-message").next(".valid-message").hide().text("");
                            						$("#mdp").next(".error-message").show().text("Caractère(s) invalide(s).");
                            						
                            						$("#mdp_verif").val('');
                            						
                            						if($('#mdp_verif').val() != '' ){
                            								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            								$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre mot de passe.");
                            								valid = false;
                            						}
                            						else{
                            							$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            							$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            							$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                            						}
                            						valid = false;
                            					}	
                            					else if(!$("#mdp").val().match(/^[a-zA-Z0-9'_.-]{8,30}$/i)){
                            						$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            						$("#mdp").next(".error-message").next(".valid-message").hide().text("");
                            						$("#mdp").next(".error-message").show().text("Mot de passe trop court ou trop long.");
                            						
                            						$("#mdp_verif").val('');
                            						
                            						if($('#mdp_verif').val() != '' ){
                            								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            								$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre mot de passe.");
                            								valid = false;
                            						}
                            						else{
                            							$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            							$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            							$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                            						}
                            						valid = false;
                            					}
                            					else{
                            						$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            						$("#mdp").next(".error-message").hide().text("");	
                            						$("#mdp").next(".error-message").next(".valid-message").show().text("Votre mot de passe est valide.");
                            							if($('#mdp_verif').val() == '' ){
                            								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            								$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                            								valid = false;
                            							}
                            							else if($('#mdp_verif').val() != $('#mdp').val()){
                            								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                            								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            								$("#mdp_verif").next(".error-message").fadeIn().text("Votre vérification de mot de passe doit être la même que votre mot de passe.");
                            								valid = false;
                            							}
                            							else{
                            								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            								$("#mdp_verif").next(".error-message").hide().text("");	
                            								$("#mdp_verif").next(".error-message").next(".valid-message").show().text("Votre vérification de mot de passe est valide.");
                            							}
                            					}
                            					
                            					if($('#mail').val() == '' ){
                            						$("#mail").next(".error-message").next(".valid-message").hide().text("");
                            						$("#mail").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            						$("#mail").next(".error-message").fadeIn().text("Veulliez entrer votre adresse E-mail.");
                            						
                            						$("#mail_verif").val('');
                            						
                            						valid = false;
                            						if($('#mail_verif').val() != '' ){
                            								$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                            								$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            								$("#mail_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre adresse E-mail.");
                            								valid = false;
                            							}
                            						else{
                            							$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                            							$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            							$("#mail_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification d'adresse E-mail.");
                            						}
                            					}
                            					else if(!$("#mail").val().match(/^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$/i)){
                            						$("#mail").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            						$("#mail").next(".error-message").next(".valid-message").hide().text("");
                            						$("#mail").next(".error-message").show().text("Mauvais format");
                            						
                            						$("#mail_verif").val('');
                            						
                            						if($('#mail_verif').val() != '' ){
                            								$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                            								$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            								$("#mail_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre adresse E-mail.");
                            								valid = false;
                            						}
                            						else{
                            							$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                            							$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            							$("#mail_verif").next(".error-message").fadeIn().text("Veulliez entrer une vérification de votre adresse E-mail.");
                            						}
                            						valid = false;
                            					}
                            					else{
                            						var userMail = $('#mail').val();
                            							$.get('testMail.php', {
                            								'mail': userMail
                            							}, function processResult(data, textStatus){
                            								if (data != '') {
                            									var mail = $('#mail').val();
                            									$('#mail').next('.error-message').next('.valid-message').hide().text('');
                            									$('#mail').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
                            									$('#mail').next('.error-message').show().text('L\'adresse E-mail ' + mail + ' a déjà été utilisé pour la création d\'un compte.');
                            									$('#mail').val('');
                            									$('#mail_verif').val('');
                            									valid = false;
                            									
                            									if($('#mail_verif').val() != '' ){
                            										$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                            										$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            										$("#mail_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre adresse E-mail.");
                            										valid = false;
                            									}
                            									else{
                            										$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                            										$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            										$("#mail_verif").next(".error-message").fadeIn().text("Veulliez entrer une vérification de votre adresse E-mail.");
                            									}
                            								}
                            								else {
                            									$('#mail').next('.error-message').next('.valid-message').show().text('Votre adresse E-mail est valide.');
                            									$('#mail').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
                            									$('#mail').next('.error-message').hide().text('');
                            									
                            									if($('#mail_verif').val() == '' ){
                            										$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                            										$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            										$("#mail_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de adresse E-mail.");
                            										valid = false;
                            									}
                            									else if($('#mail_verif').val() != $('#mail').val()){
                            										$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                            										$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            										$("#mail_verif").next(".error-message").fadeIn().text("Votre vérification de votre adresse E-mail doit être la même que votre adresse E-mail.");
                            										valid = false;
                            									}
                            									else{
                            										$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                            										$("#mail_verif").next(".error-message").hide().text("");	
                            										$("#mail_verif").next(".error-message").next(".valid-message").show().text("Votre vérification d'adresse E-mail est valide.");
                            									}
                            								}
                            							});
                            							
                            					}	
                            					
                            					limit = 1;
                            					nb = $('input#charte:checked').length;
                            					if(limit == nb){
                            						$("#charte").next(".error-message").next(".valid-message").show().text("Charte acceptée.");
                            						$("#charte").next(".error-message").hide().text("");
                            						var charte = 1;
                            						
                            					}
                            					else{
                            						$("#charte").next(".error-message").next(".valid-message").hide().text("");
                            						$("#charte").next(".error-message").show().text("Vous devez accepter la charte pour vous incrire.");
                            						valid = false;
                            					}
                            					alert('');
                            					alert(valid);
                            					
                            					if(valid == true){
                            						alert('bien');
                            					}
                            					else{
                            						alert('mal');
                            					}
                            					return valid;
                            				});	
                            });
                            

                            Enlever la première alert et la deuxième dira le contraire même si c'est faut.
                            • Partager sur Facebook
                            • Partager sur Twitter
                              7 juillet 2010 à 11:05:02

                              Ton ajax est asynchrone, càd, le javascript n'attend pas la réponse pour continuer la fonction.

                              $(function() {
                              				$("#envoyer").click(function(){
                              					var valid = true;
                              					
                              					var last_step = function() {
                              						limit = 1;
                              						nb = $('input#charte:checked').length;
                              						if(limit == nb){
                              							$("#charte").next(".error-message").next(".valid-message").show().text("Charte acceptée.");
                              							$("#charte").next(".error-message").hide().text("");
                              							var charte = 1;
                              							
                              						}
                              						else{
                              							$("#charte").next(".error-message").next(".valid-message").hide().text("");
                              							$("#charte").next(".error-message").show().text("Vous devez accepter la charte pour vous incrire.");
                              							valid = false;
                              						}
                              						alert('');
                              						alert(valid);
                              						
                              						if(valid == true){
                              							alert('bien');
                              						}
                              						else{
                              							alert('mal');
                              						}
                              						
                              
                              						$('#mon_form').submit();
                              					};
                              					
                              					
                              					
                              					
                              					
                              					
                              					
                              					
                              					
                              					var next_step = function() {
                              						if($('#mdp').val() == ''){
                              							$("#mdp").next(".error-message").next(".valid-message").hide().text("");
                              							$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              							$("#mdp").next(".error-message").fadeIn().text("Veulliez entrer votre mot de passe.");
                              							
                              							$("#mdp_verif").val('');
                              							
                              							valid = false;
                              							
                              							if($('#mdp_verif').val() != '' ){
                              									$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              									$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              									$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre mot de passe.");
                              									valid = false;
                              								}
                              							else{
                              								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              								$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                              							}
                              						}
                              						else if($('#mdp').val() == $("#pseudo").val() ){
                              							$("#mdp").next(".error-message").next(".valid-message").hide().text("");	
                              							$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              							$("#mdp").next(".error-message").fadeIn().text("Votre mot de passe doit être différent de votre pseudo.");
                              							
                              							$("#mdp_verif").val('');
                              							
                              							valid = false;	
                              							if($('#mdp_verif').val() != '' ){
                              									$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              									$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              									$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre mot de passe.");
                              									valid = false;
                              							}	
                              							else{
                              								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              								$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                              							}
                              						}					
                              						else if(!$("#mdp").val().match(/^[a-zA-Z0-9'_.-]+$/i)){
                              							$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              							$("#mdp").next(".error-message").next(".valid-message").hide().text("");
                              							$("#mdp").next(".error-message").show().text("Caractère(s) invalide(s).");
                              							
                              							$("#mdp_verif").val('');
                              							
                              							if($('#mdp_verif').val() != '' ){
                              									$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              									$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              									$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre mot de passe.");
                              									valid = false;
                              							}
                              							else{
                              								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              								$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                              							}
                              							valid = false;
                              						}	
                              						else if(!$("#mdp").val().match(/^[a-zA-Z0-9'_.-]{8,30}$/i)){
                              							$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              							$("#mdp").next(".error-message").next(".valid-message").hide().text("");
                              							$("#mdp").next(".error-message").show().text("Mot de passe trop court ou trop long.");
                              							
                              							$("#mdp_verif").val('');
                              							
                              							if($('#mdp_verif').val() != '' ){
                              									$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              									$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              									$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre mot de passe.");
                              									valid = false;
                              							}
                              							else{
                              								$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              								$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              								$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                              							}
                              							valid = false;
                              						}
                              						else{
                              							$("#mdp").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              							$("#mdp").next(".error-message").hide().text("");	
                              							$("#mdp").next(".error-message").next(".valid-message").show().text("Votre mot de passe est valide.");
                              								if($('#mdp_verif').val() == '' ){
                              									$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              									$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              									$("#mdp_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de mot de passe.");
                              									valid = false;
                              								}
                              								else if($('#mdp_verif').val() != $('#mdp').val()){
                              									$("#mdp_verif").next(".error-message").next(".valid-message").hide().text("");
                              									$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              									$("#mdp_verif").next(".error-message").fadeIn().text("Votre vérification de mot de passe doit être la même que votre mot de passe.");
                              									valid = false;
                              								}
                              								else{
                              									$("#mdp_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              									$("#mdp_verif").next(".error-message").hide().text("");	
                              									$("#mdp_verif").next(".error-message").next(".valid-message").show().text("Votre vérification de mot de passe est valide.");
                              								}
                              						}
                              						
                              						if($('#mail').val() == '' ){
                              							$("#mail").next(".error-message").next(".valid-message").hide().text("");
                              							$("#mail").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              							$("#mail").next(".error-message").fadeIn().text("Veulliez entrer votre adresse E-mail.");
                              							
                              							$("#mail_verif").val('');
                              							
                              							valid = false;
                              							if($('#mail_verif').val() != '' ){
                              									$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                              									$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              									$("#mail_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre adresse E-mail.");
                              									valid = false;
                              								}
                              							else{
                              								$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                              								$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              								$("#mail_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification d'adresse E-mail.");
                              							}
                              						}
                              						else if(!$("#mail").val().match(/^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$/i)){
                              							$("#mail").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              							$("#mail").next(".error-message").next(".valid-message").hide().text("");
                              							$("#mail").next(".error-message").show().text("Mauvais format");
                              							
                              							$("#mail_verif").val('');
                              							
                              							if($('#mail_verif').val() != '' ){
                              									$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                              									$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              									$("#mail_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre adresse E-mail.");
                              									valid = false;
                              							}
                              							else{
                              								$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                              								$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              								$("#mail_verif").next(".error-message").fadeIn().text("Veulliez entrer une vérification de votre adresse E-mail.");
                              							}
                              							valid = false;
                              						}
                              						else{
                              							var userMail = $('#mail').val();
                              								$.get('testMail.php', {
                              									'mail': userMail
                              								}, function processResult(data, textStatus){
                              									if (data != '') {
                              										var mail = $('#mail').val();
                              										$('#mail').next('.error-message').next('.valid-message').hide().text('');
                              										$('#mail').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
                              										$('#mail').next('.error-message').show().text('L\'adresse E-mail ' + mail + ' a déjà été utilisé pour la création d\'un compte.');
                              										$('#mail').val('');
                              										$('#mail_verif').val('');
                              										valid = false;
                              										
                              										if($('#mail_verif').val() != '' ){
                              											$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                              											$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              											$("#mail_verif").next(".error-message").fadeIn().text("Veulliez refaire la vérification de votre adresse E-mail.");
                              											valid = false;
                              										}
                              										else{
                              											$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                              											$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              											$("#mail_verif").next(".error-message").fadeIn().text("Veulliez entrer une vérification de votre adresse E-mail.");
                              										}
                              									}
                              									else {
                              										$('#mail').next('.error-message').next('.valid-message').show().text('Votre adresse E-mail est valide.');
                              										$('#mail').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
                              										$('#mail').next('.error-message').hide().text('');
                              										
                              										if($('#mail_verif').val() == '' ){
                              											$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                              											$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              											$("#mail_verif").next(".error-message").fadeIn().text("Veulliez entrer votre vérification de adresse E-mail.");
                              											valid = false;
                              										}
                              										else if($('#mail_verif').val() != $('#mail').val()){
                              											$("#mail_verif").next(".error-message").next(".valid-message").hide().text("");
                              											$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              											$("#mail_verif").next(".error-message").fadeIn().text("Votre vérification de votre adresse E-mail doit être la même que votre adresse E-mail.");
                              											valid = false;
                              										}
                              										else{
                              											$("#mail_verif").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              											$("#mail_verif").next(".error-message").hide().text("");	
                              											$("#mail_verif").next(".error-message").next(".valid-message").show().text("Votre vérification d'adresse E-mail est valide.");
                              										}
                              									}
                              									
                              									last_step();
                              								});
                              								
                              								return false;
                              								
                              						}
                              						
                              						last_step();
                              					};
                              					
                              					
                              					
                              					
                              					
                              					
                              						
                              					
                              					if($('#pseudo').val() == '' ){
                              						$("#pseudo").next(".error-message").next(".valid-message").hide().text("");
                              						$("#pseudo").next(".error-message").next(".valid-message").next(".info-message").hide().text("");
                              						$("#pseudo").next(".error-message").fadeIn().text("Veulliez entrer votre pseudo.");
                              						valid = false;
                              					}
                              					else if(!$("#pseudo").val().match(/^[a-zA-Z0-9'é"'èçà_.-]+$/i)){
                              						$("#pseudo").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              						$("#pseudo").next(".error-message").next(".valid-message").hide().text("");
                              						$("#pseudo").next(".error-message").show().text("Caractère(s) invalide(s).");
                              						valid = false;
                              					}
                              					
                              					else if(!$("#pseudo").val().match(/^[a-zA-Z0-9'é"'èçà_.-]{4,17}$/i)){
                              						$("#pseudo").next(".error-message").next(".valid-message").next(".info-message").hide().text("");	
                              						$("#pseudo").next(".error-message").next(".valid-message").hide().text("");
                              						$("#pseudo").next(".error-message").show().text("Pseudo trop court ou trop long.");
                              						valid = false;
                              					}
                              					else{
                              						
                              							var userName = $('#pseudo').val();
                              							$.get('testPseudo.php', {
                              								'pseudo': userName
                              							}, function processResult(data, textStatus){
                              								if (data != '') {
                              									var pseudo = $('#pseudo').val();
                              									$('#pseudo').next('.error-message').next('.valid-message').hide().text('');
                              									$('#pseudo').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
                              									$('#pseudo').next('.error-message').show().text('Le pseudo ' + pseudo + ' a déjà été utilisé pour la création d\'un compte.');
                              									$('#pseudo').val('');
                              									valid = false;
                              								}
                              								else {
                              									$('#pseudo').next('.error-message').next('.valid-message').show().text('Votre pseudo est valide.');
                              									$('#pseudo').next('.error-message').next('.valid-message').next('.info-message').hide().text('');
                              									$('#pseudo').next('.error-message').hide().text('');
                              									
                              									
                              								}
                              								
                              								next_step();
                              							});
                              							
                              							return false;
                              						
                              					}
                              					
                              					next_step();
                              					
                              					return false;
                              				});	
                              });
                              



                              En mettant id="mon_form" sur ton formulaire.

                              C'est un peu complexe p-e, donc n'hésite pas à poser des questions
                              • Partager sur Facebook
                              • Partager sur Twitter
                                7 juillet 2010 à 11:10:58

                                En fait si je comprends bien je n'ai qu'à rajouter : next_step();
                                pour que Js prennent bien en compte mon test Ajax ?
                                Pourquoi tu ne fait que la function() pour last_step() et pas aussi pour next_step() ?
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  7 juillet 2010 à 12:12:38

                                  Non pas du tout.

                                  Il te faut utiliser des callback.

                                  next_step est une fonction qui vérifie le password & email.
                                  last_step est la fonction qui en fonction de valid fait le boulot.

                                  En gros le script fait :

                                  If (pseudo blabla) {
                                          machin
                                  }
                                  else {
                                          AJAX
                                                  Lors de la réponse AJAX on appelle next_step
                                          
                                          On quitte la fonction
                                  }
                                  On appelle next_step.
                                  
                                  
                                  
                                  Puis dans next_step :
                                  If (email) {
                                          blabla
                                  }
                                  else {
                                          AJAX
                                                  A la réponse on appelle last_step
                                          On quitte la fonction
                                  }
                                  On appelle last_step
                                  
                                  
                                  last_step: Il fait le boulot final
                                  • Partager sur Facebook
                                  • Partager sur Twitter

                                  Peut pas définir de variable dans une requête AJAX.

                                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                  • Editeur
                                  • Markdown