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

JavaScript Discussion :

[AJAX] Evenement dans une liste


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 108
    Points : 49
    Points
    49
    Par défaut [AJAX] Evenement dans une liste
    bonjour,
    J'ai un formulaire dans lequel il ya deux champs SELECT et j'aimerais que lorsqu'on fait une selection dans le 1er, on remplit le 2eme par une requete dans une base de donnée en se servant de la donnée selectionnée dans le 1er instantanement

    Quelqu'un aurait une piste???

  2. #2
    Membre du Club
    Webmaster
    Inscrit en
    Juillet 2005
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Juillet 2005
    Messages : 36
    Points : 48
    Points
    48
    Par défaut
    je le fais pour toi esperons qu il va t aider :p:p

    la base:
    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
    -- phpMyAdmin SQL Dump
    -- version 2.6.1
    -- http://www.phpmyadmin.net
    -- 
    -- Serveur: localhost
    -- Généré le : Samedi 19 Janvier 2008 à 09:38
    -- Version du serveur: 4.1.9
    -- Version de PHP: 4.3.10
    -- 
    -- Base de données: `select`
    -- 
     
    -- --------------------------------------------------------
     
    -- 
    -- Structure de la table `selec`
    -- 
     
    CREATE TABLE `selec` (
      `id` int(11) NOT NULL auto_increment,
      `nom` varchar(100) NOT NULL default '',
      `age` int(11) NOT NULL default '0',
      KEY `id` (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=11 ;
     
    -- 
    -- Contenu de la table `selec`
    -- 
     
    INSERT INTO `selec` VALUES (1, 'hamdi', 14);
    INSERT INTO `selec` VALUES (2, 'ali', 15);
    INSERT INTO `selec` VALUES (3, 'mohamed', 15);
    INSERT INTO `selec` VALUES (4, 'saleh', 14);
    INSERT INTO `selec` VALUES (5, 'farida', 15);
    INSERT INTO `selec` VALUES (6, 'mounira', 17);
    INSERT INTO `selec` VALUES (7, 'jihed', 14);
    INSERT INTO `selec` VALUES (8, 'fathi', 18);
    INSERT INTO `selec` VALUES (9, 'ahmed', 17);
    INSERT INTO `selec` VALUES (10, 'wajdi', 15);
    le fichier php contenant la requette:selectuser.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
    <?php
    header('Content-Type: text/xml'); 
    echo "<?xml version=\"1.0\"?>\n";
    echo "<exemple>\n";
     
    //
    $link=mysql_connect("localhost", "root", "");
    mysql_select_db("select", $link);
     
    $req="select * from selec where age='".$_GET["age"]."'";
    $res=mysql_query($req);
    //sleep(5);
     
    while ($rows = mysql_fetch_array($res))
    {
    	echo "<donnee>";echo $rows["nom"];echo "</donnee>\n";
    }
    echo "</exemple>\n";
    ?>
    le fichier contenant ajax et ... les select :p:p selectexemple.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
    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
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    <html>
    	<head>
    		<title>test select</title>
    		<script type='text/JavaScript'>
     
    	 		function getXhr(){
                                    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 getselect(){
    			var selectvar="";
    			//var a=new String;
    				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){
    						document.getElementById("msg").innerHTML="<img src=\"img.gif\" width=\"16\" height=\"16\"> chargement des noms ...";
    					}else if(xhr.readyState == 4){
    					document.getElementById("msg").innerHTML="";
    						docXML= xhr.responseXML;
    	                    items = docXML.getElementsByTagName("donnee");
    						selectvar="<select>";
    	                    for (i=0;i<items.length;i++)
    	                   {
    		             selectvar=selectvar+"<option>"+items.item(i).firstChild.data+"</option>";
    	                   }
    					  selectvar=selectvar+"</select>";
     
    					  document.getElementById("monselect").innerHTML=selectvar;
    					}
    				}
    				xhr.open("GET","selectuser.php?age="+monform.age.options[monform.age.selectedIndex].value,true);
    				xhr.send(null);
    			}
     
     
    		</script>
    	</head>
    	<body>
    	<form name="monform" id="monform">
    	<select name="age" onChange="getselect();">
    	  <option value="10">10</option>
    	  <option value="11">11</option>
    	  <option value="12">12</option>
    	  <option value="13">13</option>
    	  <option value="14">14</option>
    	  <option value="15">15</option>
    	  <option value="16">16</option>
    	  <option value="17">17</option>
    	  <option value="18">18</option>
    	  <option value="19">19</option>
    	  <option value="20">20</option>
        </select>
    	<div id="msg"></div>
    	<div id="monselect">
    	<select name="nom">
    	  <option>aucun</option>
        </select>
    	</div>
    	</form>
    	</body>
    </html>
    n oublie pas de me repondre :p:p

  3. #3
    Membre régulier
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2007
    Messages : 137
    Points : 70
    Points
    70
    Par défaut
    je crois qu'il a oublié ^^

  4. #4
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 108
    Points : 49
    Points
    49
    Par défaut
    ça marche!! merci

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 09/01/2016, 11h30
  2. Evenement sur item dans une liste
    Par bilou69 dans le forum Flex
    Réponses: 11
    Dernier message: 18/12/2009, 11h46
  3. Réponses: 4
    Dernier message: 04/08/2009, 16h36
  4. [AJAX] Positionnement dans une liste déroulante
    Par Paul75 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/04/2007, 11h25
  5. [C#]Evenement dans une list box
    Par maitesn1 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 30/06/2006, 09h44

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