Elenco categorie con 3 multi livelli php mysql

di il
3 risposte

Elenco categorie con 3 multi livelli php mysql

Buongiorno,
nel database ho tre tabelle per la registrazione delle categorie.
La prima tabella registra le categorie principali.
La seconda tabella registra le categorie secondarie che sono figlie di quelle principali.
La terza tabella registra le sottocategorie figlie di quelle secondarie.
<?php
/////////////////////////FIRST CATEGORY/////////////////////////////////
$sql_categoria = "SELECT category_id,category_name,category_url,metatit,metadesc,metakey,status FROM coupons_category WHERE status='A' order by category_name ASC";
$result_categoria = mysqli_query($conn, $sql_categoria);
if (mysqli_num_rows($result_categoria) > 0) {
    // output data of each row
    while ($row_categoria = mysqli_fetch_assoc($result_categoria)) {
        $category_name = $row_categoria["category_name"];
        $category_id = $row_categoria["category_id"];
        $category_url = $row_categoria["category_url"];

        ////////////SECOND CATEGORIES/////////////
        $sql_sotto_categoria = "SELECT * FROM coupons_category_sub WHERE status='A' and category_id=$category_id";
        $result_sotto_categoria = mysqli_query($conn, $sql_sotto_categoria);
        if (mysqli_num_rows($result_sotto_categoria) > 0) {
            while ($row_sotto_categoria = mysqli_fetch_assoc($result_sotto_categoria)) {
                $sub_category = $row_sotto_categoria["sub_name"];

                ////////////THIRD CATEGORIES/////////////
                $sql_sub_categoria = "SELECT * FROM coupons_category_sub_sub WHERE status='A' and category_sub_id=$sub_id ";
                $result_sub_categoria = mysqli_query($conn, $sql_sub_categoria);
                if (mysqli_num_rows($result_sub_categoria) > 0) {
                    while ($row_sub_categoria = mysqli_fetch_assoc($result_sub_categoria)) {
                        $sub_sub_categoryname = $row_sub_categoria["sub_sub_name"];
                    }
                } else {
                    echo "NO RESULT";
                }
            }
        } else {
            echo "NO RESULT";
        }
    }
} else {
    echo "NO RESULT";
}
/////////////////////////QUERY SELECT///////////////////////////////// 
?>
Ottenuti i risultati dovrei visualizzarli nel seguente menù :

<nav >
  <ul class="menu">
    <li><a href="/">1° Categoria madre</a>
      <ul class="submenu">
        <li><a href="/" class="submenu-link"> 2° Categoria figlia della 1°</a>
          <ul class="submenu">
        <li><a href="/">3° Categoria figlia della 2°</a></li>
      </ul>
        </li>
      </ul>
    </li>
  </ul>
</nav>
Quale metodo mi consigliate di utilizzare? Non sono molto esperto. Grazie!

3 Risposte

Devi accedere o registrarti per scrivere nel forum
3 risposte