IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] Test d'unicité d'une valeur


Sujet :

AJAX

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 31
    Par défaut [AJAX] Test d'unicité d'une valeur
    Bonjour,

    J'aimerai bien avoir votre aide, je désire faire un formulaire d'inscription, et mon but est de tester si la valeur d'un champ qui est supposée unique, existe déjà dans une table de la base de données, en utilisant ajax, j'ai essayé cette fonction, mais ça me signale un problème, je ne sais pas pourquoi, voici le corps de la fonction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    function doValidateCne() {
    			var loginisgood=false;
    			// je récupère le champs login
    			var o=document.getElementById('cne');
    			var http=null;
    			   if (window.XMLHttpRequest)    //  Objet standard
    				{
    					http = new XMLHttpRequest();     //  Firefox, Safari, ...
    				}
    				else  if (window.ActiveXObject)      //  Internet Explorer
    				{
    					http = new ActiveXObject("Microsoft.XMLHTTP");
    				}
     
    				http.onreadystatechange  = function(){ 
    					 if(http.readyState  == 4)
    					 {
    						  if(http.status  == 200) 
    						  {
    							   // la page php a été exécuté correctement
    							   // la page a affiché true c'est à dire un login existe déjà
    							  if(http.responseText=='true') // récupération de l'affichage grâce à http
    							  {
    								 loginisgood=false;
    							  }
    									 // la page a affiché false
    							  else
    							  {
    								loginisgood=true;
    							  }
     
    						  } 
    					 }
    				};
    				http.open("GET", "verif.php?cne="+o.value,  true); 
    				http.send(null); 
    				//return loginisgood;
    			}
    Et merci d'avance pour votre aide

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    Bonjour,
    ...fonction, mais ça me signale un problème, je ...
    il eut été intéressant de nous le faire connaitre.

    ...je ne sais pas pourquoi...
    je pense qu'il doit y avoir une erreur

  3. #3
    Membre Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par défaut
    Salut,

    La fonction onreadystatechange ne fait rien d'autre que d'affecter une valeur à une variable locale déclarée dans la fonction doValidateCne.

    Au pire essaie avec le mode synchrone (bloquant) mais renvoyant un résultat expoitable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function doValidateCne(){
    	var http=null,o=document.getElementById('cne');
     
    	if(window.XMLHttpRequest)
    		http=new XMLHttpRequest();
    	else if(window.ActiveXObject)
    		http=new ActiveXObject('Microsoft.XMLHTTP');
     
    	http.open('GET','verif.php?cne='+encodeURIComponent(o.value),false); // False = Mode synchrone
    	http.send(null);
     
    	return (http.readyState==4&& http.status==200&& http.responseText==='true');
    }

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 31
    Par défaut
    Merci, je vais essayer avec ton indication

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 31
    Par défaut
    Merciiiiiiiii, ça marche nickeeel.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [eZ Publish] Test l'unicité de la valeur d'un champs dans la base de contenu d'eZ
    Par tic_29 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 27/10/2009, 15h02
  2. [AJAX] [PHP] Srcipt qui retourne une valeur
    Par Gregory.M dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 17/02/2008, 13h58
  3. Réponses: 1
    Dernier message: 31/10/2006, 11h15
  4. Réponses: 2
    Dernier message: 08/12/2005, 14h41
  5. Test d'existence d'une valeur dans une table
    Par dleu dans le forum Bases de données
    Réponses: 9
    Dernier message: 29/12/2004, 10h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo