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ération de valeurs.


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 46
    Par défaut [AJAX] Récupération de valeurs.
    Bonjour à tous,
    débutant en Php et Javascript je suis en train de réaliser quelques petits test pour un petit projet que je dois faire.

    J'ai une liste déroulante alimenter par une base de donnée, l'utilisateur sélectionne son choix dans la liste puis la page affiche le resultat sans ce rafraichir.
    Je n'arrive pas à afficher le résultat de la liste ! Pour l'instant j'ai simplement réussi à afficher un simple texte "Test Ok".

    Je pense que mon problème est que je n'arrive pas à récuperer la valeur de mon select.

    Voici une partie de mon code :

    Script Javascript dans feuille1.php

    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
       <script language="javascript">
    function request(url,cadre) {
    	var XHR = null;
     
    	if(window.XMLHttpRequest)
    		XHR = new XMLHttpRequest();
    	else if(window.ActiveXObject) 
    		XHR = new ActiveXObject("Microsoft.XMLHTTP");
    	else { 
    		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
    		return;
    	}
     
    	XHR.open("GET",url, true);
     
    	XHR.onreadystatechange = function attente() {
     
    	if(XHR.readyState == 4)     {
     
    		document.getElementById(cadre).innerHTML = XHR.responseText;
       }
    	}
    	XHR.send(null);		
    	return;
    }
      </script>
    Ma liste également présente dans feuille1.php

    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
     
    <div id=main class=main>
    <form method="post">
    <TABLE BORDER="1" CELLPADDING="1" CELLSPACING="1" align="center">
    <TR>
    <TH>
    <select onchange="request('donne.php?quoi=commercial','xmlhttp');return(false)" name="test">
    <?php
     
    $requetecommercial= "select distinct ma_comvisu from ma_magasins";
    $rescommercial = mssql_query($requetecommercial);
     
    while($valcommercial=mssql_fetch_array($rescommercial)) {
            
            echo "<option value=".$valcommercial["ma_comvisu"].">".$valcommercial["ma_comvisu"]."</option>";
            }
      
    echo"</select>";
            
    ?>
      </TH>
    </TR>
     <TR>
     <TD id="xmlhttp"><?php
     
    ?>
     <TD/>
     <TR/>
    Et ma page donne.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <?php
    if($_GET['quoi']=="commercial") {
    print 'Test Ok';
    }
    ?>
    Merci de votre aide

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    Citation Envoyé par maximation Voir le message
    Je n'arrive pas à afficher le résultat de la liste ! Pour l'instant j'ai simplement réussi à afficher un simple texte "Test Ok".
    Ben oui, c'est ce que fait ton code actuel ...

    Je ne vois pas où tu tentes d'alimenter une seconde liste

    A+

  3. #3
    Membre averti
    Inscrit en
    Mai 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 46
    Par défaut
    Je ne souhaite pas ajouter une seconde liste, du moins pour le moment, je souhaite simplement afficher dans ma balise TD si dessous la valeur sélectionner par l'utilisateur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <TD id="xmlhttp">
    <?php
     
    ?>
    <TD/>

    Donc je dois surement modifier mon script ainsi que remplacer mais je ne sais pas par quoi.
    Pour être plus compréhensible j'aimerais que à la place de "Test OK" s'affiche la valeur de la liste choisi par l'utilisateur.

    Pour l'instant lorsque je choisis une option dans ma liste par exemple "Commercial 1", mon code m'affiche "Test OK" dans ma balise TD.
    Cependant j'aimerais qu'il m'affiche "Commercial 1" au lieu de "Test Ok"

    Merci

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Et bien je suppose que ta page donne.php pourrait ressembler à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    print $_GET['quoi'];
    ?>
    et ton onchange
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onchange="request('donne.php?quoi='+this.value,'xmlhttp');return(false)"
    D'ailleurs, pourquoi un "return false;" ?

    A+

  5. #5
    Membre averti
    Inscrit en
    Mai 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 46
    Par défaut
    Sa ne fait rien c'est une partie de code que j'ai récupéré et oublié de modifier.

    Et bien maintenant cela m'affiche "This.Value", j'ai également tenté avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <select onchange="request('donne.php?quoi=+this.options[this.selectedIndex].value','xmlhttp')" name="test">
    Même chose cela affiche "this.options[this.selectedIndex].value"

    Problème de concaténation peut-être ?

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par maximation Voir le message
    Problème de concaténation peut-être ?
    Ou de lunettes ?

    A+

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/01/2016, 22h14
  2. Réponses: 1
    Dernier message: 01/10/2010, 18h07
  3. [Prototype] Ajax.updater et récupération de valeurs depuis un formulaire
    Par Skiant dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 09/01/2009, 16h31
  4. [AJAX] Récupération d'une valeur en retour d'un php
    Par lodan dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 08/02/2007, 21h18

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