Accueil > Forum > > > > Liste liée - Formulaire
Liste liée - Formulaire
jeudi 25 juin 2009 à 13:31:36 |
Liste liée - Formulaire

onylink
|
Bonjour, J'essai de liées des listes dans un formulaire, mais après mon choix rien ne se passe.. Mais je n'ai pas d'erreur.. Page appelante : <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>Acquisition species variant</title> <head> <script type="text/javascript"> function request05(liste) { var l1 = f.elements["list1"]; var l2 = f.elements["list2"]; var index = l1.selectedIndex; if(index < 1) l2.options.length = 0; else{ var xhr_object = null;
if(window.XMLHttpRequest)// Firefox xhr_object = new XMLHttpRequest(); elseif(window.ActiveXObject)// Internet Explorer xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); else{// XMLHttpRequest non supporté par le navigateur alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); return; } xhr_object.open("POST", "test2.php", true);
xhr_object.onreadystatechange = function(){ if(xhr_object.readyState == 4) eval(xhr_object.responseText); } xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); var data = "speciesvariant_name="+escape(l1.options[index].value)+"&form="+f.name+"&select=list2"; xhr_object.send(data); } } </script> </head> <body> <form name="enter_nvll_xp_choix" action="Entree_dans_la_bdd/enter_DB_experience.php" method="POST"> <?php mysql_connect("localhost", "root", ""); mysql_select_db("test"); $experience = mysql_query("SELECT * FROM speciesvariant"); echo '<tr><td>Test listes liees:</td>';
echo '<td><select name="list1" id="list1" class="ButtonL" onchange="request05(this.form)">'; echo '<option value="" selected disabled>Choix</option>';
while($speciesvariant_name1 = mysql_fetch_array($experience)) { $speciesvariant_name2 = $speciesvariant_name1['speciesvariant_name']; echo "<option value=\"$speciesvariant_name2\"> $speciesvariant_name2 </option>"; } //echo '</select>'; echo '</td><td><select name="list2" id="list2" class="ButtonL"></td>';
/*---------------------------------------------------------------------*/ mysql_close(); ?>
test2.php : <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>test</title> <head> </head> <body> <?php $mysql_db = @mysql_connect("localhost", "root", ""); @mysql_select_db("test"); $query = "SELECT `AGI` FROM `gene` WHERE `speciesvariant_name` = '".$_POST["speciesvariant_name2"]."'"; $query .= " ORDER BY `AGI`"; $result = @mysql_query($query); echo 'var o = null;'; echo 'var s = document.forms["'.$_POST["form"].'"].elements["'.$_POST["select"].'"];'; echo 's.options.length = 0;'; while($r = mysql_fetch_array($result)) echo 's.options[s.options.length] = new Option("'.$r["AGI"].'");'; @mysql_close($mysql_db); ?> </body> </html> Est-ce vous pourriez me dire pourquoi la seconde liste ne se rempli pas ? Merci pour votre aide. Bien Cordialement, Onylink (Master 1 Bio-informatique)
|
|
jeudi 25 juin 2009 à 13:50:19 |
Re : Liste liée - Formulaire

Bul3
|
Réponse acceptée !
Bonjour, oulah.... tu utilises ajax, ça retourne du texte dans une variable javascript ! donc, si je lis bien : echo 'var o = null;'; echo 'var s = document.forms["'.$_POST["form"].'"].elements["'.$_POST["select"].'"];'; echo 's.options.length = 0;';
???? c'est du javascript ! donc non exécuté ! il faudrait le faire "manuellement" et dans la même réponse, ça ajoute du html ! echo 's.options[s.options.length] = new Option("'.$r["AGI"].'");'; qui n'est pas affiché non plus ! et pas dans une balise <select> là aussi, il faut le faire "manuellemnt" !
sans préjuger de ce qui se passe et coté php, et coté javascript ! comme on ne peut pas tester....
t'es sur la mauvaise voie.... tout ce que je peux faire, pour le moment, c'est te donner un lien où la gestion de listes liées est abordé : c'est ici
Cordialement [ mon Site] [ M'écrire]  Bul
|
|
jeudi 25 juin 2009 à 14:20:07 |
Re : Liste liée - Formulaire

onylink
|
oki, merci pour le lien.. Pour faire l'AJAX j'ai suivi un tuto.. J'ai remplacé mes variables et adapté à ma bdd. [ Lien ]Je vais tenter de faire avec le lien que tu m'as envoyé.. Cordialement, Onylink
|
|
jeudi 25 juin 2009 à 14:41:54 |
Re : Liste liée - Formulaire

Bul3
|
>>Pour faire l'AJAX j'ai suivi un tuto.. certes... tu a simplement shunté que le script sur le serveur retourne des données, du texte brut... qui doit être exploité par le javascript.
|
|
jeudi 25 juin 2009 à 14:43:33 |
Re : Liste liée - Formulaire

Bul3
|
et, ça doit dater un peu... ajax fonctionne avec tous les navigateurs de nos jours
|
|
jeudi 25 juin 2009 à 16:15:33 |
Re : Liste liée - Formulaire

onylink
|
Merci grâce à ton lien j'ai réussi à faire ce que je voulais..
Maintenant je vais essayé d'en lier plusieurs.. 
|
|
jeudi 25 juin 2009 à 16:34:17 |
Re : Liste liée - Formulaire

Bul3
|
nickel si ça baigne. >>Maintenant je vais essayer d'en lier plusieurs.. 3 ou plus, un ch'tiot peu plus complexe, mais ce n'est au fond, qu'une "généralisation" de 2 listes ;o))
|
|
Cette discussion est classée dans : mysql, echo, xhr, object, speciesvariant
Répondre à ce message
Sujets en rapport avec ce message
pb XMLHTTPRequest [ par LaTatadu91 ]
Bonjour a tous, voila je cherche a changer les valeurs de plusieurs input situés ds un tableau sans recharger la page sur un onchange de balise : ap
XMLHttpRequest probleme [ par hlimaiem ]
Limaiem heykelBonjour, j'ai un page php qui contient un tableau remplis depuis une base de donnees. Ma base et rempli a partir d'un programme en java
Rafraichir la page via choix dans liste [ par pasdie ]
Bonjour à tous,Voilà mon problème :J'ai une page PHP contenant deux listes.Ma première liste est remplie via une requete sur mon serveur (je possède E
Vérification de doublons [ par eddie5150 ]
Bonjour à tous,je viens de me lancer dans AJAX, mais je ne comprends pas encore tout très bien,aussi j'ai essayé d'effectuer une vérification automati
recuperation données AJAX [ par corsamobile ]
Bonjour à tous,J'ai créé une liste deroulante liée avec trois listes deroulantes qui vont chercher leurs données dans une BDD.En selectionnant une ref
créer des lien en ajax [ par baloc ]
bonjour à tous.Je souhaite réaliser des liens en ajax. ça c'est la partie simple théorique. maisntenant l'autre partie. les liens sont des éléments d'
Rafraichir div avec select méthode POST [ par gabi26 ]
Bonjour,Mon premier message sur le forum qui jusque là m'a bien inspiré!Voici le Hic:J'utilise un select pour appeler différentes pages php. Le script
Envois formulaire XMLHttpRequest POST BDD [ par Annadrill ]
bonjour,alors voilà, cela fait trois jours que je tourne en rond avec un problème qui à l'air idiot mais que je n'arrive à résoudre.je m'explique, j'a
Script Ajax Marche pas sous IE7, pas de bouton retour [ par verbiagecasselaicouill ]
Seigneur je suis en train de couler...J'utilise un script Ajax posté sur ce site il y a longtemps par atlante pour charger les pages dans des div.Prob
Problème javascript + liste déroulante + requête SQL [ par exorzist ]
Bonjour, voilà je suis bloqué depuis un bon moment maintenant:en fait je veux pouvoir, au changement dans une liste déroulante, récupérer son value af
Livres en rapport
|
Derniers Blogs
JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc
Forum
UTILISER UN .JSUTILISER UN .JS par zaikoe
Cliquez pour lire la suite par zaikoe
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|