Générer HTML depuis un tableau multidimentionel

Résolu
nicelife90 Messages postés 615 Date d'inscription   Statut Membre Dernière intervention   -  
nicelife90 Messages postés 615 Date d'inscription   Statut Membre Dernière intervention   -
J'aimerais générer un code HTML avec le format suivant depuis le tableau que j'ai mit en liens.

    <li id="821" class="folder">Accessoires tablette et cellulaire
      <ul>
        <li id="426" class="folder">Accessoires pour cellulaire
          <ul>
            <li id="675">Supports et stations d'accueil</li>
            <li id="680" class="folder">Chargeurs maison et automobile
              <ul>
                <li id="689">Chargeurs pour cellulaire</li>
                <li id="690">Chargeurs pour téléphone intelligent</li>
              </ul>
            </li>
            <li id="681" >Pellicules protectrices</li>
            <li id="682" >Câbles et adaptateurs pour cellulaire</li>
            <li id="683" >Autres accessoires</li>
            <li id="684" >Lentilles pour iPhone</li>
            <li id="687" >Étuis pour cellulaire</li>
            <li id="688" >Accessoires Bluetooth et mains libres</li>
          </ul>
        <li id="132"  class="folder">Accessoires - iPod et lecteur MP3
          <ul>
            <li id="238" >Émetteurs FM</li>
            <li id="254" >Étuis protecteurs et sacs de transport</li>
            <li id="272" >Accessoires</li>
            <li id="356" >Lecteurs MP3</li>
          </ul>
        </li>
        <li id="347"  class="folder">Accessoires pour tablette
          <ul>
            <li id="481" >Stylos et clavier</li>
            <li id="482" >Câbles et adaptateurs</li>
            <li id="486" >Chargeurs maison et automobile</li>
            <li id="489" >Étuis protecteurs et sacs de transport</li>
            <li id="485" >Supports et stations d'accueil</li>
          </ul>
        </li>
      </ul>
    </li>



[Le tableau multidimensionnel ]: https://dev.itgestion.info
[L'objectif]: https://dev.itgestion.info/tree.PNG

Le id du <li> doit être category_id le texte doit être name.
A voir également:

2 réponses

Utilisateur anonyme
 
Bonsoir mettre "Merci" dans la signature c'est malin, comme ça il y est une fois pour toute, Bonjour au début du message c'est pas mal aussi....
0
Zephirr Messages postés 317 Date d'inscription   Statut Membre Dernière intervention   100
 
0
nicelife90 Messages postés 615 Date d'inscription   Statut Membre Dernière intervention   151
 
Merci de me montré la base du PHP,

Je sais comment faire un tableau, puisque j'ai mit un tableau de 241 page en exemple.

Ce que je veux savoir c'est comment généré un code HTML depuis ce tableau au format que j'ai montré plus haut.

j'ai créé un code qui le fais très bien mais je voudrais pas être celui que le met
jour après moi.

Je cherche une meilleur façons de générer la même chose de façons clair et lisible.

Voici ce que j'ai pour le moment et qui fonctionne très bien.

<div id="tabs-3">
<div id="tree">
<ul id="treeData" style="display: none;">
<?php
//GET ALL CATEGORY
$updater = new magento_updater();
$cat = $updater->getCategory();

//KEY
$c = 'children';
$i = 'category_id';
$n = 'name';
$ac = 'is_active';

//0
$l0 = 0;
while(isset($cat[$c][$l0])){
echo '<li id="'.$cat[$c][$l0][$i].'" '.(($cat[$c][$l0][$ac] != 1) ? 'class="unselectable"' : NULL).' '.((count($cat[$c][$l0][$c]) > 0) ? 'class="folder"' : NULL ).'>'.$cat[$c][$l0][$n]."\n";
if (count($cat[$c][$l0][$c]) > 0){
echo '<ul>'."\n";
//1
$l1 = 0;
while(isset($cat[$c][$l0][$c][$l1])){
echo '<li id="'.$cat[$c][$l0][$c][$l1][$i].'" '.(($cat[$c][$l0][$c][$l1][$ac] != 1) ? 'class="unselectable"' : NULL).' '.((count($cat[$c][$l0][$c][$l1][$c]) > 0) ? 'class="folder"' : NULL ).'>'.$cat[$c][$l0][$c][$l1][$n]."\n";
if (count($cat[$c][$l0][$c][$l1][$c]) > 0){
echo '<ul>'."\n";
//2
$l2 = 0;
while(isset($cat[$c][$l0][$c][$l1][$c][$l2])){
echo '<li id="'.$cat[$c][$l0][$c][$l1][$c][$l2][$i].'" '.(($cat[$c][$l0][$c][$l1][$c][$l2][$ac] != 1) ? 'class="unselectable"' : NULL).''.((count($cat[$c][$l0][$c][$l1][$c][$l2][$c]) > 0) ? 'class="folder"' : NULL ).'>'.$cat[$c][$l0][$c][$l1][$c][$l2][$n]."\n";
if (count($cat[$c][$l0][$c][$l1][$c][$l2][$c]) > 0){
echo '<ul>'."\n";
//3
$l3 = 0;
while(isset($cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3])){
echo '<li id="'.$cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3][$i].'" '.(($cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3][$ac] != 1) ? 'class="unselectable"' : NULL).' '.((count($cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3][$c]) > 0) ? 'class="folder"' : NULL ).'>'.$cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3][$n]."\n";
if (count($cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3][$c]) > 0){
echo '<ul>'."\n";
//4
$l4 = 0;
while(isset($cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3][$c][$l4])){
echo '<li id="'.$cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3][$c][$l4][$i].'" '.(($cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3][$c][$l4][$ac] != 1) ? 'class="unselectable"' : NULL).'>'.$cat[$c][$l0][$c][$l1][$c][$l2][$c][$l3][$c][$l4][$n]."\n";
$l4++;
}
echo '</ul>'."\n";
}
$l3++;
}
echo '</ul>'."\n";
}
$l2++;
}
echo '</ul>'."\n";
}
$l1++;
}
echo '</ul>'."\n";
}
$l0++;
}
?>
</ul>
</div>
</div>


S.V.P si vous ne connaissez pas la réponse merci de ne pas commenté avec un bonjour serais bien je le sais et je pense avoir été agréable dans ma demande.

De plus je cherche l'aide d'une personne qui connais le PHP pas le français.

Merci de votre aide!
0
nicelife90 Messages postés 615 Date d'inscription   Statut Membre Dernière intervention   151
 
P.S. si vous collé le code dans un fichier PHP il sera déjà plus lisible.
0
nicelife90 Messages postés 615 Date d'inscription   Statut Membre Dernière intervention   151 > nicelife90 Messages postés 615 Date d'inscription   Statut Membre Dernière intervention  
 
Finalement la ligne $cat = $updater->getCategory(); retourne le tableau que j'ai mit en exemple.
0
Zephirr Messages postés 317 Date d'inscription   Statut Membre Dernière intervention   100
 
Toutes mes excuses pour cette réponse quelque hâtive.
Je ne connais pas l'objet
magento_updater();

Peux-tu m'en dire plus?

Ps: la coloration syntaxique est disponible en haut a droite de la fenêtre de réponse.
0
Zephirr Messages postés 317 Date d'inscription   Statut Membre Dernière intervention   100
 
Ah ok
0