Problème de liste déroulante
Résolu
Torkass
Messages postés
189
Statut
Membre
-
Torkass Messages postés 189 Statut Membre -
Torkass Messages postés 189 Statut Membre -
Bonjour,
J'ai un petit soucis avec une boucle...
J'aimerais afficher dans une liste déroulante des éléments de ma base de données, là tout va bien, j'y arrive.
Mais j'aimerais que les sous-catégories s'affichent également dans la liste déroulante sous la catégorie à auquelles elles sont liées... là je coince...
Moi conde actuel :
J'ai enregistré dans la base de données pour chaque produit s'il appartient à un produit au dessus, donc je suppose que c'est facilement faisable, mais...
Voici ce que j'ai essayé, mais bien sûr, ça ne fonctionne pas :
J'ai un petit soucis avec une boucle...
J'aimerais afficher dans une liste déroulante des éléments de ma base de données, là tout va bien, j'y arrive.
Mais j'aimerais que les sous-catégories s'affichent également dans la liste déroulante sous la catégorie à auquelles elles sont liées... là je coince...
Moi conde actuel :
echo '<option value="">Vente</option>';
$sql_categories_p = mysql_query("SELECT name, nom FROM produits WHERE type='Categories_produits' AND cat_au_dessus='' ORDER BY id");
$nombre_de_categories_p = mysql_num_rows($sql_categories_p);
while($data_categories_p = mysql_fetch_row($sql_categories_p))
{
$name_categories_p[] = $data_categories_p[0];
$nom_categories_p[] = $data_categories_p[1];
$name_categories_p_strip[] = stripslashes($data_categories_p[0]);
$nom_categories_p_strip[] = stripslashes($data_categories_p[1]);
}
for ($i = 0; $i<$nombre_de_categories_p; $i++)
{
echo '<option value="'.$name_categories_p_strip[$i].'"> | - '.$name_categories_p_strip[$i].(($nom_categories_p_strip[$i]) ? ' ('.$nom_categories_p_strip[$i].')' : '').'</option>';
}
echo '</select>';Ce code m'affiche parfaitement les catégories principales, mais je ne sais pas comment afficher aussi les sous-catégories liées. Par exemple je cherche à faire ça :*liste déroulante*
>> Produit 1
>> Sous produit 1
>> Sous-sous produit 1
>> Sous-sous produit 2
>> Sous produit 2
>> Sous-sous produit 3
>> Produit 2
>> Sous produit 3
>> Sous produit 4
>> Sous-sous produit 4
>> Sous-sous produit 5
>> Sous Produit 5et ainsi de suite...
J'ai enregistré dans la base de données pour chaque produit s'il appartient à un produit au dessus, donc je suppose que c'est facilement faisable, mais...
Voici ce que j'ai essayé, mais bien sûr, ça ne fonctionne pas :
echo '<option value="">Vente</option>';
$sql_categories_p = mysql_query("SELECT name, nom FROM produits WHERE type='Categories_produits' AND cat_au_dessus='' ORDER BY id");
$nombre_de_categories_p = mysql_num_rows($sql_categories_p);
while($data_categories_p = mysql_fetch_row($sql_categories_p))
{
$name_categories_p[] = $data_categories_p[0];
$nom_categories_p[] = $data_categories_p[1];
$name_categories_p_strip[] = stripslashes($data_categories_p[0]);
$nom_categories_p_strip[] = stripslashes($data_categories_p[1]);
}
$sql_categories_p2 = mysql_query("SELECT name, nom FROM produits WHERE type='Categories_produits' AND cat_au_dessus='Produit 1' ORDER BY id");
$nombre_de_categories_p2 = mysql_num_rows($sql_categories_p2);
while($data_categories_p2 = mysql_fetch_row($sql_categories_p2))
{
$name_categories_p[] = $data_categories_p[0];
$nom_categories_p[] = $data_categories_p[1];
$name_categories_p_strip[] = stripslashes($data_categories_p[0]);
$nom_categories_p_strip[] = stripslashes($data_categories_p[1]);
}
for ($i = 0; $i<$nombre_de_categories_p; $i++)
{
echo '<option value="'.$name_categories_p_strip[$i].'"> | - '.$name_categories_p_strip[$i].(($nom_categories_p_strip[$i]) ? ' ('.$nom_categories_p_strip[$i].')' : '').'</option>';
for ($i = 0; $i<$nombre_de_categories_p2; $i++)
{
echo '<option value="'.$name_categories_p2_strip[$i].'"> | - '.$name_categories_p2_strip[$i].(($nom_categories_p2_strip[$i]) ? ' ('.$nom_categories_p2_strip[$i].')' : '').'</option>';
}
}
echo '</select>';Merci d'avance à qui pourra m'éclairer.
A voir également:
- Problème de liste déroulante
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste code ascii - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
- Liste de diffusion whatsapp - Guide
echo '<option value="">Vente</option>'; $sql_categories_p = mysql_query("SELECT name, nom FROM produits WHERE type='Categories_produits' AND cat_au_dessus='' ORDER BY id"); $nombre_de_categories_p = mysql_num_rows($sql_categories_p); while($data_categories_p = mysql_fetch_row($sql_categories_p)) { $name_categories_p = $data_categories_p[0]; $nom_categories_p = $data_categories_p[1]; $name_categories_p_strip = stripslashes($data_categories_p[0]); $nom_categories_p_strip = stripslashes($data_categories_p[1]); echo '<option value="'.$name_categories_p_strip.'"> | - '.$name_categories_p_strip.(($nom_categories_p_strip) ? ' ('.$nom_categories_p_strip.')' : '').'</option>'; $sql_categories_p = mysql_query("SELECT name, nom FROM produits WHERE type='Categories_produits' AND cat_au_dessus='".$data_categories_p[0]."' ORDER BY id"); $nombre_de_categories_p = mysql_num_rows($sql_categories_p); while($data_categories_p = mysql_fetch_row($sql_categories_p)) { $name_categories_p = $data_categories_p[0]; $nom_categories_p = $data_categories_p[1]; $name_categories_p_strip = stripslashes($data_categories_p[0]); $nom_categories_p_strip = stripslashes($data_categories_p[1]); echo '<option value="'.$name_categories_p_strip.'"> | - '.$name_categories_p_strip.(($nom_categories_p_strip) ? ' ('.$nom_categories_p_strip.')' : '').'</option>'; } } echo '</select>';