bonjour a vous tous

j essai de crée mon formulaire avec mes 2 select dont le select 1depend aussi du select 2

le but etant d afficher les arcticles d un catalogue

mon select1= categorie avec ses options=carte mere,tapis de souris,carte son, ect....
et au clik cela me les affiche dans mon iframe

mon select2=marque avec ses options=asus,msi,antec,ect... et aussi au clik l affichage dans l iframe

si je choisi dans le select1 je souhaite que mon select2 me retourne les marques associé a mon choix
sinon il affiche toute les marque du catalogue

bon j ai voulou proceder par étape et j ai créé mes deux select puis j ai reussi a afficher le resultat de mon select1
cependant je sais pas comment on fait pour lié mon deuxieme select avec le premier
ni si j ai effectuer la bonne methode pour le premier

voici deja ce que et comment j ai fais

mes select:


<td  width=400>&nbsp;<select name=CATEGORIE onchange="document.getElementById('result').src=this.options[this.selectedIndex].value">
                  <option value =''>Choisissez une catégorie
                    <option value='-'>                
                  <option style="color:#FFFFFF; background-color:#55606B" value='' >ACCESSOIRE DIVERS
                    
                    <option value='../cat/principal.php?action=pile' >Pile 
                    <option value='../cat/principal.php?action=tapis;Tapis souris'>Tapis souris 

le select 2 que je n ai pas encore traiter

 <td >
                  &nbsp;<select name=MAR_ID  onChange="''>
                    <option value=''>Choisissez une marque  
                    <option value= >2-Power  
                    <option value= >3COM  
                    <option value= >ABIT  
                    <option value= >ACER  
                    <option value=>ACRONIS  


et mon code php


case"tapis":
                            //création un nouvel objet tbs
                            $tbs = new clsTinyButStrong;
                                        
                            //modèle html dynamique à utiliser
                            $tbs -> LoadTemplate("cat.html");
    
                            //création de la requete
                            $requete = "SELECT* ,round((Nnet_ttc * 1.396),2) as net FROM Nproduct
                            where 	Nsouscategorie='Tapis souris'";
       
                            //execute la requete,recupere les resultats et fusionne avec le modele html
                            $tbs -> MergeBlock('blk',$connexion,$requete);
                                      
                            //affiche le fichier html
                            $tbs -> Show();
                      break;
                      	
                     case"pile":
                          //création un nouvel objet tbs
                          $tbs = new clsTinyButStrong;
                                      
                          //modèle html dynamique à utiliser
                          $tbs -> LoadTemplate("cat.html");
  
                          //création de la requete
                          $requete = "SELECT* ,round((Nnet_ttc * 1.396),2) as net FROM Nproduct
                          where Nsouscategorie='Pile'";
     
                          //execute la requete,recupere les resultats et fusionne avec le modele html
                          $tbs -> MergeBlock('blk',$connexion,$requete);
                                    
                          //affiche le fichier html
                          $tbs -> Show();
                    break;



voila j espere que mes explications son clair ,si j ai deja mal proceder je suis tout ouie

merci d avance pour vos reponses
personne? Smiley decu

dans l etat actuel des chose soit j arrive a afficher mon select1 soit j arrive a faire mon select2 mais j arrive plus a afficher Smiley rolleyes

dans mon value je voudrait mettre un truc comme ca

../cat/principal.php?action=pile - Tapis souris

et faire un split

mais apres je sais pas comment separé mes valeurs et les recuperer

j ai fais un truk comme ca mais apres suis perdu

 function aff_val(){
valeur = document.formulaire.CATEGORIE.value.split('-');

document.formulaire.valeur1.value = valeur[0];
document.formulaire.valeur2.value = valeur[1];
} 


je met comment ensuite dans mon onchange?

sachant que actuellement j ai ca

onchange="MAJ_marque(this.valeur2);document.getElementById('result').src=this.options[this.selectedIndex].valeur1

helllpppp Smiley bawling
bon je vais re formuler ma question car j ai un peu avancer depuis

je souhaite que ma page affiche comme ici http://www.sauvetage-informatique.eu/cat/catiframe.html

mais que mon deuxieme select marche comme la

http://www.sauvetage-informatique.eu/cat/bis/catiframe.html

je n arrive pas a faire les deux en meme temps

pour l affiche de mon deuxieme select je passe par un code ajax

mon form est comme ceci

<form name="formulaire" method=POST action="principal.php">
                
                &nbsp;
               
                
              <tr >
                 &nbsp;                                                                                                                                       
                <td  width=400>&nbsp;<select name=CATEGORIE class=texte   onchange="MAJ_marque(this.value);aff_val()">
                  <option value ='-'>Choisissez une catégorie
                    <option value='-'>                
                  <option style="color:#FFFFFF; background-color:#55606B" value='69-' >ACCESSOIRE DIVERS
                    
                    <option value='Pile-../cat/principal.php?action=cat' >Pile 
                    <option value='Tapis souris'>Tapis souris 
                    <option value='-'>                
                  <option style="color:#FFFFFF; background-color:#55606B" value='112-' >AUDIO
                    <option value='Carte son' >Carte son
                    <option value='Haut-Parleur' >Haut-Parleur
                    <option value='Lecteur MP3-MP4' >Lecteur MP3-MP4
                    <option value='Microphone - casque' >Microphone - casque
                    <option value='Système Home Cinema' >Système Home Cinema
                    <option value='Télécommande' >Télécommande
                    <option value='Téléphone' >Téléphone


et mon php complet

 if(isset($_POST['CATEGORIE']))
	 {
	 switch($_POST['action'])
	  {
              
                    
                    case"cat":
                    
                            //création un nouvel objet tbs
                            $tbs = new clsTinyButStrong;
                                        
                            //modèle html dynamique à utiliser
                            $tbs -> LoadTemplate("cat.html");
    
                            //création de la requete
                            $requete = "SELECT* ,round((Nnet_ttc * 1.396),2) as net FROM Nproduct
                            where 	Nsouscategorie=".$_POST['CATEGORIE']; 
                            
                              
                            //execute la requete,recupere les resultats et fusionne avec le modele html
                            $tbs -> MergeBlock('blk',$connexion,$requete);
                                      
                            //affiche le fichier html
                            $tbs -> Show();
                      break;
                    
	      }
	  }
	if(isset($_GET['num']))
       {
       
       // si on reçois un parametre num c'est que on veux mettre a jour la liste des marques
       
       //sélection des marques qui utilisent la categorie reçu en parametre num
       
       $requete = "SELECT DISTINCT Nmarque FROM Nproduct
                   WHERE 	Nsouscategorie ='".$_GET['num']."'" ;
                   
                  
                   
         // execution de la requete et recuperation les resultats dans une variable
         
         $resultats = mysql_query($requete) ;
         
         //construire la chaine de marques a afficher
        
         
         //commencement de la liste déroulante des marques
         
        $res = "&nbsp;<select name=\"N_ID\" onchange=\"document.getElementById('result').src=this.options[this.selectedIndex].value;MAJ_marque(this.value)\">";
                      
        $res=$res."<option value=>choisissez une marque</option>";
         while($tempo = mysql_fetch_assoc($resultats) )
          {
                  
            //répétition des marques trouvées
			       $res = $res ."<option value=".$tempo['N_ID'].">".$tempo['Nmarque']."</option>";
         
         }
         
         //fin de la liste déroulante
        $res = $res ."</select>";   
		   
	     	echo $res;
	     	
	     	
        
	 
	 }
   



je m en sort pas s il vous plait Smiley decu
Modifié par baddevil (13 May 2011 - 12:11)
bonjour j ai vraiment besoin d aide

je n arrive pas a ce quand je clik sur mon select2 il me fasse cette action par exemple

principal.php?marque=CREATIVE&CATEGORIE=Carte son

il me manque surement une fonction pour mettre dans le onchange mais java ajax je maitrise pas du tout

Smiley decu