begin process at 2012 05 31 11:25:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

triple liste déroulante


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

triple liste déroulante

mercredi 8 février 2006 à 10:43:03 | triple liste déroulante

ahcorad

J'aimerais avoir trois listes déroulantes liées : sélection catégorie, sous_catégorie et objet
l'objet faisant partie de la sous-catégorie.
un formulaire sans recharger la page (bien sur !)
j'ai tenté de modifier le code de frop01
http://www.phpcs.com/code.aspx?id=25832#
[ Lien ]
en utilisant la méthode ajax car données importantes !
mais sans succès !
dc si qq1 a une idée ! merci !

mercredi 8 février 2006 à 10:59:45 | Re : triple liste déroulante

malalam

Administrateur CodeS-SourceS
Hello,

heu, c'est justement quand le nombre de données qui transitent entre le serveur et le client est important que les requêtes xmlhttp ne sont pas forcément recommandables...
Enfin bref, que ce soit entre 2, 3, ou 10 listes, la manière sera la même.
Dis nous plutôt sur quoi tu bloques ?
mercredi 8 février 2006 à 13:33:09 | Re : triple liste déroulante

ahcorad

je bloque sur la deuxième liste il faut juste répéter le même procédé que pour la première liste ou il faut rajouter quelque chose d'autre ???
car ç'est la liste intermédiaire qui reçoi la donnée de la 1ère et doit donner une valeur à la 3ème !

mercredi 8 février 2006 à 13:46:14 | Re : triple liste déroulante

malalam

Administrateur CodeS-SourceS
Le principe est le même entre la 1ère et la 2de, qu'entre la 2de et la 3ème.
mercredi 8 février 2006 à 13:49:38 | Re : triple liste déroulante

ahcorad

ok ba jvai revoir si j'ai pas fait d'erreur !
vendredi 10 février 2006 à 10:20:25 | Re : triple liste déroulante

ahcorad

ça ne fonctionne toujours pas ! je ne vois vraiment pas ! je met mon code !
page principal
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script type="text/javascript">
 /**
  * Permet d'envoyer des données en GET ou POST en utilisant les XmlHttpRequest
  */
 function sendData(param, page)
 {
  if(document.all)
  {
   //Internet Explorer
   var XhrObj = new ActiveXObject("Microsoft.XMLHTTP") ;
  }//fin if
  else
  {
      //Mozilla
   var XhrObj = new XMLHttpRequest();
  }//fin else

  //définition de l'endroit d'affichage:
  var content = document.getElementById("contenu");
  
  XhrObj.open("POST", page);

  //Ok pour la page cible
  XhrObj.onreadystatechange = function()
  {
   if (XhrObj.readyState == 4 && XhrObj.status == 200)
    content.innerHTML = XhrObj.responseText ;
  }

  XhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
  XhrObj.send(param);
 }//fin fonction SendData

 function send(param, page)
 {
  if(document.all)
  {
   //Internet Explorer
   var XhrObj = new ActiveXObject("Microsoft.XMLHTTP") ;
  }//fin if
  else
  {
      //Mozilla
   var XhrObj = new XMLHttpRequest();
  }//fin else

  //définition de l'endroit d'affichage:
  var content = document.getElementById("cont");
  
  XhrObj.open("POST", page);

  //Ok pour la page cible
  XhrObj.onreadystatechange = function()
  {
   if (XhrObj.readyState == 4 && XhrObj.status == 200)
    content.innerHTML = XhrObj.responseText ;
  }

  XhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
  XhrObj.send(param);
 }//fin fonction SendData
    </script>
</head>
<body>

<?php
 // Paramètres de la Connexion à la base MYSQL
 $user="";
 $host="";
 $password="";
 $database="";
 $i=0; // variable de test
 $j=0; // variable pour garder la valeur du premier enregistrement catégorie pour l'affichage
 $k=0;
 $l=0;
      
 $connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");
 mysql_select_db($database,$connexion);   
 echo '<form action="rec.php" method="POST">';
 // Séléction de tous les enregistrements de la table Catégorie
 $rq="SELECT * FROM structure WHERE numstructure <> 0 ORDER BY siglestructure;";
 $result= mysql_query ($rq) or die ("Select impossible");
?>
 <select size="1" name="struc" OnChange="sendData('id='+this.value,'liresc.php')" onKeyUp="sendData('id='+this.value,'liresc.php')">
 <?php    
  while ($dt=mysql_fetch_row($result))
  {
   // Remplir la liste déroulante des catégorie 
   echo "<option value=".($dt[0]).">".($dt[2])."</option>";
   if ($i==0) { $j=$dt[0]; $i=1; } // garder la valeur du premier enregistrement
  }
 ?>   
 </select><br><br>

   <div id="contenu">
 
   <select size='1' name='service' OnChange="send('no='+this.value,'lire.php')" onKeyUp="send('no='+this.value,'lire.php')">
 <?php   
    $rq="SELECT * FROM service WHERE numstructure=".$j." ORDER BY nomservice;";
    $result= mysql_query ($rq) or die ("Select impossible");
     // $i = initialise le variable i
    $i=0;
    while ($dt=mysql_fetch_row($result))
    {
  echo "<option value=".utf8_encode($dt[0]).">".utf8_encode($dt[3])."</option><br>";
      if ($k==0) { $l=$dt[0]; $k=1; } // garder la valeur du premier enregistrement
    }   
 echo "</select>";
 echo '</div>';
 ?>
 
 <div id="cont">

 <select size='1' name='sous_service'>
 <?php
  $rq="SELECT * FROM sous_service WHERE numservice=".$l." ORDER BY nomsousservice;";
  $result= mysql_query ($rq) or die ("Select impossible");
  $k=0;
  while ($dt=mysql_fetch_row($result))
  {
   echo "<option value=".utf8_encode($dt[0]).">".utf8_encode($dt[3])."</option><br>";
  }   
  echo "</select>";
  echo '</div>';
  echo '<p /><input type="submit" value="Afficher la liste"><p />';
  echo "</form>";
 ?>  
</body>
</html>
   

lire.php
<?php
header('Content-type: text') ; // on déclare ce qui va être afficher
 
// test des POST emis
if(isset($_POST['no']) && !empty($_POST['no']) ){
   $user="";
   $host="";
   $password="";
   $database="";
   $connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");  
   mysql_select_db($database,$connexion);
    $rq="SELECT * FROM sous_service WHERE numservice=".$_POST['no']." ORDER BY nomsous_service;";
    $result= mysql_query ($rq) or die ("Select impossible");
    $k=0;
 if (mysql_num_rows($result)>0)
 {
   echo "<select size='1' name='sous_service'>";
 }
 else
 {
   echo utf8_encode("Aucun sous service"); 
   echo '<input name="sous_service" type="hidden" value="0" />';
 }
    while ($dt=mysql_fetch_row($result))
    {  
  echo "<option value=".utf8_encode($dt[0]).">".utf8_encode($dt[3])."</option><br>";
    }   
 echo "</select>";
}

?>

liresc.php

<?php
header('Content-type: text') ; // on déclare ce qui va être afficher
 
// test des POST emis
if(isset($_POST['id']) && !empty($_POST['id']) ){
   $user="";
   $host="";
   $password="";
   $database="";
   $connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");  
   mysql_select_db($database,$connexion);
    $rq="SELECT * FROM service WHERE numstructure=".$_POST['id']." ORDER BY nomservice;";
    $result= mysql_query ($rq) or die ("Select impossible");
     // $i = initialise le variable i
    $i=0;
 if (mysql_num_rows($result)>0)
 {
   echo "<select size='1' name='service'>";
 }
 else
 {
   echo utf8_encode("Aucun service"); 
   echo '<input name="service" type="hidden" value="0" />';
 }
    while ($dt=mysql_fetch_row($result))
    {  
  echo "<option value=".utf8_encode($dt[0]).">".utf8_encode($dt[3])."</option><br>";
    }   
 echo "</select>";
}

?>
Voila HELP !

vendredi 10 février 2006 à 16:56:13 | Re : triple liste déroulante

ahcorad

ç ptet un peu compliqué mais j'ai vraiment besoin de votre aide ! merci



Cette discussion est classée dans : liste, déroulante, catégorie, recharger, triple


Répondre à ce message

Sujets en rapport avec ce message

Bouttons radio et rechargement [ par aforpien ] Bonjour à tous,Dans le cadre du développement d'un petit moteur de recherche (pour un intranet), je souhaiterai proposer plusieurs options : effectuer select sur une liste déroulante [ par vrachid ] bonjour voila j'ai un formulaire de recherche qui comporte une zone text nommée name, une liste déroulante nommée speciale et une autre liste déroulan Liste déroulante [ par Vanessa01 ] Bonjour,J'ai fait une liste déroulante qui contient des tournois, seulement j'aimerais que lorsque je sélectionne un tounoi que mon choix reste sur le select dans liste déroulante [ par baignassou ] Bonjour.Je cherche à réaliser::select dans une base mysql qui s'affichera dans une liste déroulante.une sélection dans cette liste lancera un select d Liste déroulante associée [ par zabroska ] Bonjour,voici mon probleme :    -j'ai une liste déroulante dans laquelle je dois choisir quelqu'un;    -ensuite, quand cette personne est choisie, des Actualisation des champs selon liste déroulante [ par aforpien ] Bonjour à tous,J'ai créé une page ou j'affiche une liste déroulante alimentée par une requête SQL. J'aimerai que lorsque je clique sur un bouton Ok mi Probleme liste déroulante [ par romainbisson ] Bonsoir,je souhaite mettre les noms de mes enseignants dans une liste déroulante mais je n'y arrive pas. de plus, je souhaite mettre deux boutons qui [PHP MAIL] - Envoyer un mail à partir d'une liste déroulante [ par Graig083 ] Bonjour à tous,Je cherche le moyen d'envoyer un mail type à un seul destinataire sélectionner dans une liste déroulante reliée à une base de donnée My


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,087 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales