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] Récupérer deux valeur en AJAX


Sujet :

AJAX

  1. #1
    Membre habitué
    Inscrit en
    Décembre 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 8
    Par défaut [AJAX] Récupérer deux valeur en AJAX
    Bonjour,

    Je possède 2 fichiers, un avec le sript ajax,deux checkbox et un select ci-dessous ( j'ai volontairement simplifié, ce n'est pas vraiment mon code c'est juste pour que vous compreniez )

    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
    <script type='text/javascript'>
     
    			function getXhr(){
                                    var xhr = null; 
    				if(window.XMLHttpRequest) // Firefox et autres
    				   xhr = new XMLHttpRequest(); 
    				else if(window.ActiveXObject){ // Internet Explorer 
    				   try {
    			                xhr = new ActiveXObject("Msxml2.XMLHTTP");
    			            } catch (e) {
    			                xhr = new ActiveXObject("Microsoft.XMLHTTP");
    			            }
    				}
    				else { // XMLHttpRequest non supporté par le navigateur 
    				   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
    				   xhr = false; 
    				} 
                                    return xhr;
    			}
     
    			/**
    			* Méthode qui sera appelée sur le click du bouton
    			*/
    			function go(){
    				var xhr = getXhr();
    				// On défini ce qu'on va faire quand on aura la réponse
    				xhr.onreadystatechange = function(){
    					// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
    					if(xhr.readyState == 4 && xhr.status == 200){
    						leselect = xhr.responseText;
    						// On se sert de innerHTML pour rajouter les options a la liste
    						document.getElementById('valeur').value = leselect;
    					}
    				}
     
    				// Ici on va voir comment faire du post
    				xhr.open("POST","ajax.php",true);
    				// ne pas oublier ça pour le post
    				xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    				// ne pas oublier de poster les arguments
    				// ici, l'id de l'auteur
    				sel = document.getElementById('donnees');
    				id = sel.options[sel.selectedIndex].value;
    				xhr.send("donnees="+id);
    			}
    		</script>
     
     
    <form method="POST" action="">
     
    <input type="checkbox" name="boxA" value="boxA" >boxA
    <input type="checkbox" name="boxB" value="boxB" >boxB
     
    	<select name="valeur">
    		<option value="valeurA" >valeurA</option>
    	</select>
     
    	<input type="text" name="donnees" value="">
     
    </form>
    et voilà mon code intermédiaire ajax.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    $select = $_POST['valeur'] ;
     
    $req = mysql_query("SELECT Numero FROM table WHERE id = '" . $select ."' "); 
     
    while($tab = mysql_fetch_array($req))
    {
    echo $tab['Numero'] ; 
    }
    Ces deux pages me permettent de récupérer dans mon input=texte la valeur de $tab['Numero'] par rapport à la valeur de mon select mais je souhaite obtenir quelque chose comme cela:

    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
     
    $select = $_POST['valeur'] ;
    $boxA = $_POST['boxA'] ;
     
     
     
     
    $req = mysql_query("SELECT Numero FROM table WHERE id = '" . $select ."' "); 
     
    while($tab = mysql_fetch_array($req))
    {
    	if( $boxA == on )
    	{
    			echo "A" . $tab[Numero] ;
    	}
    	else
    	{
    			echo "B" . $tab[Numero] ;
    	} 
    }
    :


    c'est à dire récupérer aussi en même temps que la valeur de mon select, la valeur de ma boxA, pour ensuite pouvoir avoir une valeur différente dans mon input=text suivant la case cochée.

    J'espère m'être exprimé assez clairement.

    Merci d'avance de votre aide

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr.send("param1=valeur1&param2=valeur2&...&paramN=valeurN");
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre habitué
    Inscrit en
    Décembre 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 8
    Par défaut
    merci de cette réponse mais comment en AJAX je récupère la valeur de ma checkbox ?

    quelle est l'équivalent de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    sel = document.getElementById('donnees');
    				id=sel.options[sel.selectedIndex].value;
    pour la checkbox ?

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Tout d'abord, c'est en JavaScript que tu la récupère
    Mais bon, c'est comme pour tout champ de formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.forms[0].boxA.value;
    enfin, il y a de meilleures méthodes, mais là, c'est adapté au code de ton exemple.

    Sinon, à tout hasard, tu as été regarder la
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre habitué
    Inscrit en
    Décembre 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 8
    Par défaut
    merci de l'aide mais comme vous l'avez vu je suis débutant en AJAX/JAVASCRIPT donc là je suis un peu perdu.

    En mettant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    box = document.forms[0].boxA.value;
     
    				sel = 
    document.getElementById('CommuneFiche');
     
    				idauteur = sel.options[sel.selectedIndex].value;
    				xhr.send("CommuneFiche="+idauteur&"boxA="+boxA);
    j'ai une erreur javascript, objet attendu.

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    C'est normal, dans l'exemple que tu donnes, aucun élément n'a d'id ''CommuneFiche''
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Membre habitué
    Inscrit en
    Décembre 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 8
    Par défaut
    oui ça c'était normal car j'ai fais un mauvais copier coller mais sinon j'ai trouver une autre astuce qui n'envoi pas mes deux paramètres en AJAX car cela je n'ai pas du tout réussi, mais je récupère la valeur de ma checkbox en javacript et ça change de formulaire intermédiaire suivant la case cochée.

    Merci de votre en tout cas.

Discussions similaires

  1. [AJAX] Récupérer les valeurs d'un XML
    Par cloud76 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 21/01/2009, 07h20
  2. [AJAX] récupérer la valeur d'une liste déroulante générée en AJAX
    Par nasimpat7 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/12/2008, 00h54
  3. [AJAX] récupérer une valeur depuis responseText
    Par Ministar dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 11/10/2007, 13h33
  4. [AJAX] récupérer une valeur d'un formulaire en javascript
    Par bennap dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/05/2007, 17h09
  5. [AJAX] Afficher deux valeurs
    Par Arfigado dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 08/09/2006, 15h38

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