Page 1 sur 1
1 liste déroulante avec des categorie et des sous categories
Posté : 17 févr. 2006, 11:55
par tom_nameless
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
Re: 1 liste déroulante avec des categorie et des sous catego
Posté : 17 févr. 2006, 12:00
par mario
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 ?
Re: 1 liste déroulante avec des categorie et des sous catego
Posté : 17 févr. 2006, 12:02
par charabia
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 ?
Posté : 17 févr. 2006, 12:03
par tom_nameless
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>
Posté : 17 févr. 2006, 12:09
par charabia
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 ?
Posté : 17 févr. 2006, 12:13
par tom_nameless
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

Posté : 17 févr. 2006, 12:16
par tom_nameless
La structure :
CIBLE
id_cible
cible_fr
cible_en
...
BATIMENT
id_batiment
batiment
...
DETAIL_PROD
id_cible
id_batiment
id_acces
id_produit
Posté : 17 févr. 2006, 12:25
par charabia
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
.
.... ?
Posté : 17 févr. 2006, 12:28
par tom_nameless
OUI
C ça...
et si possible

ne pas pouvour selectionner la cible seule..
Posté : 17 févr. 2006, 12:31
par tom_nameless
dsl
Cjuste le contraire
CIBLE 1
batiment_fr 1
batiment_fr 2
...

Posté : 17 févr. 2006, 12:38
par charabia
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.
Posté : 17 févr. 2006, 13:01
par tom_nameless
Merci beaucoup de votre aide
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
Posté : 17 févr. 2006, 13:24
par charabia
Je V m'inscrire à PHP FRANCE
Ouéééééé j'ai converti quelqu'un !!!

Posté : 17 févr. 2006, 13:34
par tom_nameless
Je suis (étais) inscrit sur allhtml
encore une petite question :
Pour récupérer mon POST ??
Posté : 17 févr. 2006, 14:41
par charabia
Avec un tit $_POST['ton_champ']