1 liste déroulante avec des categorie et des sous categories

tom_nameless
Invité n'ayant pas de compte PHPfrance

17 févr. 2006, 11:55

Salut,

Je souhaite classer dans une liste déroulante des sous-catégories par rapport à des catégories...

Comment procéder?
J'ai besoin d'une aide urgente
merci

Mammouth du PHP | 768 Messages

17 févr. 2006, 12:00

J'ai besoin d'une aide urgente
Qu'est ce que tu n'arrives pas à faire ?
Peux tu nous montrer ce que tu as déjà fait ?
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 févr. 2006, 12:02

J'ai besoin d'une aide urgente
Chuutttt "urgence" n'est pas très apprécié ici. Ce ne sont que des bénévoles qui participent au forum, aussi si tu les presses comme ça tu n'obtiendras rien de bon crois moi ;)

Pour ton problème donnes nous plus de détails. Ce sont des données récupérées en base ?

tom_nameless
Invité n'ayant pas de compte PHPfrance

17 févr. 2006, 12:03

voilà mon code mais je ne sais pas si je suis dans la bonne direction
<form method="post" action="cible.php" id="id_cible">

<center><select name="cible" style="width: 150px;" onchange="document.forms['id_cible'].submit();">

                <option value="0" > -------- par activité -------- </option>
                <?
                $SQL = "SELECT * FROM detail_prod ORDER BY cible_fr";
                $res = mysql_query($SQL);
                while($val=mysql_fetch_array($res))
                {
                $id_cible=$val['id_cible'];
                echo "<option value=\"".$val["id_cible"]."\"><strong>";
                $SQL2 = "SELECT cible_fr FROM cible WHERE id_cible=$id_cible";
                $res2 = mysql_query($SQL2);
                $val2=mysql_fetch_array($res2);
                echo $val2["cible_fr"];
                echo"</strong></option>\n";


                }
                ?>
</select ><br />

<br /><br /></form>

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 févr. 2006, 12:09

Le strong n'a aucun effet sur le select.

Quelle est la structure de ta(tes) table(s) ? Tu différencies catégories et sous-catégories ?

tom_nameless
Invité n'ayant pas de compte PHPfrance

17 févr. 2006, 12:13

dsl :(
Mais ça va faire 2 jours que je merde sur la liste déroulante...

J'ai testé le tuto http://www.phpfrance.com/forums/voir_sujet-4562.php

Mais impossible pour moi de poster les données des 2 listes vers une autre page...

Donc je change de méthode :?

tom_nameless
Invité n'ayant pas de compte PHPfrance

17 févr. 2006, 12:16

La structure :

CIBLE
id_cible
cible_fr
cible_en
...

BATIMENT
id_batiment
batiment
...

DETAIL_PROD
id_cible
id_batiment
id_acces
id_produit

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 févr. 2006, 12:25

Dans ces structures, à quoi correspond les catégories et les sous-catégories ?

Tu désires par exemple dans ton select faire ce genre de chose ?

Batiment
cible_fr1_1
cible_fr1_2
.
.
Batiment1
cible_fr2_1
cible_fr2_2
.
.... ?

tom_nameless
Invité n'ayant pas de compte PHPfrance

17 févr. 2006, 12:28

OUI :D
C ça...

et si possible :oops: ne pas pouvour selectionner la cible seule..

tom_nameless
Invité n'ayant pas de compte PHPfrance

17 févr. 2006, 12:31

dsl

Cjuste le contraire

CIBLE 1
batiment_fr 1
batiment_fr 2
...

:oops:

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 févr. 2006, 12:38

Essaies dans ce cas d'intégrer :

Code : Tout sélectionner

<optgroup label="CIBLE"> <option value="xxx" selected>bat_fr_1</option> <option value="xxx">bat_fr_2</option> </optgroup>
dans ta boucle.

Avec optgroup tu vas pouvoir grouper sous la catégorie "CIBLE" les sous catégories.

tom_nameless
Invité n'ayant pas de compte PHPfrance

17 févr. 2006, 13:01

Merci beaucoup de votre aide :wink:

je v bosser sur la récup des "ID"

voici mon code pour verif :
<form method="post" action="cible.php" id="id_cible">

<center><select name="cible" style="width: 150px;" onchange="document.forms['id_cible'].submit();">

                <option value="0" selected> -------- par activité -------- </option>
                <?
                $SQL = "SELECT  DISTINCT id_cible FROM detail_prod";
                $res = mysql_query($SQL);
                while($val=mysql_fetch_array($res))
                {
                $id_cible=$val['id_cible'];
                $id_batiment=$val['id_batiment'];
                
                $SQL1 = "SELECT cible_fr FROM cible WHERE id_cible=$id_cible";
                $res1 = mysql_query($SQL1);
                $val1=mysql_fetch_array($res1);
                $cible_fr=$val1['cible_fr'];

                echo "<optgroup label=\"".$cible_fr."\">";
                
                $SQL2 = "SELECT id_batiment,batiment_fr FROM batiment WHERE id_cible=$id_cible";
                $res2 = mysql_query($SQL2);
                while($val2=mysql_fetch_array($res2))
                {
                $batiment_fr=$val2['batiment_fr'];

                echo"<option value=\"".$val["id_cible"].".".$val["id_batiment"]."\" >".$batiment_fr."</option>";


                }
                echo"</optgroup>";
                }
                ?>
</select ><br />

<br /><br /></form>
Si il y a plus simple

et encore Merci

Je V m'inscrire à PHP FRANCE

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 févr. 2006, 13:24

Je V m'inscrire à PHP FRANCE
Ouéééééé j'ai converti quelqu'un !!! :lol:

tom_nameless
Invité n'ayant pas de compte PHPfrance

17 févr. 2006, 13:34

Je suis (étais) inscrit sur allhtml :roll:

encore une petite question :

Pour récupérer mon POST ??

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 févr. 2006, 14:41

Avec un tit $_POST['ton_champ']