Url dinamiche da cambiare con categoria, subcategoria e title

Finchelabarcava

Nuovo Utente
25 Nov 2021
3
0
1
Buongiorno a tutti,
con questo script richiamo le categorie e le subactegorie:
Codice:
 <?php
          require_once 'db_connect.php';

          // Aggiungi le categorie al menu
          $sql_categories = "SELECT * FROM categories";
          $result_categories = $conn->query($sql_categories);
          while ($row_category = $result_categories->fetch_assoc()) {
            $category_id = $row_category["id"];
            $category_name = $row_category["name"];
            echo "<li class='nav-item dropdown'>";
            echo "<a class='nav-link dropdown-toggle' href='#' id='navbarDropdownMenuLink' role='button' data-bs-toggle='dropdown' aria-haspopup='true' aria-expanded='false'>$category_name</a>";
            echo "<ul class='dropdown-menu' aria-labelledby='navbarDropdownMenuLink'>";
            echo "<li><a class='dropdown-item' href='list_ads_dinamic.php?category=".$category_id."'>$category_name</a></li>";

            // Recupera le sottocategorie per questa categoria
            $sql_subcategories = "SELECT * FROM subcategories WHERE categories_id = $category_id";
            $result_subcategories = $conn->query($sql_subcategories);
            if ($result_subcategories->num_rows > 0) {
              while ($row_subcategory = $result_subcategories->fetch_assoc()) {
                $subcategory_id = $row_subcategory["id"];
                $subcategory_name = $row_subcategory["name"];
                echo "<li><a class='dropdown-item' href='list_ads_dinamic.php?category=".$category_id."&subcategory=".$subcategory_id."'>$subcategory_name</a></li>";
              }
            }

            echo "</ul>";
            echo "</li>";
          }

          // Aggiungi le pagine al menu
          $sql_pages = "SELECT * FROM pages";
          $result_pages = $conn->query($sql_pages);
          while ($row_page = $result_pages->fetch_assoc()) {
            $page_id = $row_page["id"];
            $page_title = $row_page["title"];
            echo "<li class='nav-item'>";
            echo "<a class='nav-link' href='page_detail.php?id=".$page_id."'>$page_title</a>";
            echo "</li>";
          }

          
          
          ?>
con href='page_detail.php?id=".$page_id."'>$page_title</a>" ma il risultato è una url non seo friendli tipo:

categoria. list_ads_dinamic.php?category=13
subcategoria list_ads_dinamic.php?category=14&subcategory=18

mentre io vorrei che uscisse esempio pluto (che è nel db con name) e paperino in caso di subcategoria qualcuno sa come fare ??
idem per il risultato dell'annuncio vorrei il titolo al posto. <h3 class="ad-title"><a href="ad_detail.php?id=<?php echo $row_select["id"]; ?>"><?php echo $row_select["title"]; ?></a></h3>


sto impazzendo qualcuno può aiutrami ???
 
Buongiorno a tutti,
con questo script richiamo le categorie e le subactegorie:
Codice:
 <?php
          require_once 'db_connect.php';

          // Aggiungi le categorie al menu
          $sql_categories = "SELECT * FROM categories";
          $result_categories = $conn->query($sql_categories);
          while ($row_category = $result_categories->fetch_assoc()) {
            $category_id = $row_category["id"];
            $category_name = $row_category["name"];
            echo "<li class='nav-item dropdown'>";
            echo "<a class='nav-link dropdown-toggle' href='#' id='navbarDropdownMenuLink' role='button' data-bs-toggle='dropdown' aria-haspopup='true' aria-expanded='false'>$category_name</a>";
            echo "<ul class='dropdown-menu' aria-labelledby='navbarDropdownMenuLink'>";
            echo "<li><a class='dropdown-item' href='list_ads_dinamic.php?category=".$category_id."'>$category_name</a></li>";

            // Recupera le sottocategorie per questa categoria
            $sql_subcategories = "SELECT * FROM subcategories WHERE categories_id = $category_id";
            $result_subcategories = $conn->query($sql_subcategories);
            if ($result_subcategories->num_rows > 0) {
              while ($row_subcategory = $result_subcategories->fetch_assoc()) {
                $subcategory_id = $row_subcategory["id"];
                $subcategory_name = $row_subcategory["name"];
                echo "<li><a class='dropdown-item' href='list_ads_dinamic.php?category=".$category_id."&subcategory=".$subcategory_id."'>$subcategory_name</a></li>";
              }
            }

            echo "</ul>";
            echo "</li>";
          }

          // Aggiungi le pagine al menu
          $sql_pages = "SELECT * FROM pages";
          $result_pages = $conn->query($sql_pages);
          while ($row_page = $result_pages->fetch_assoc()) {
            $page_id = $row_page["id"];
            $page_title = $row_page["title"];
            echo "<li class='nav-item'>";
            echo "<a class='nav-link' href='page_detail.php?id=".$page_id."'>$page_title</a>";
            echo "</li>";
          }

         
         
          ?>
con href='page_detail.php?id=".$page_id."'>$page_title</a>" ma il risultato è una url non seo friendli tipo:

categoria. list_ads_dinamic.php?category=13
subcategoria list_ads_dinamic.php?category=14&subcategory=18

mentre io vorrei che uscisse esempio pluto (che è nel db con name) e paperino in caso di subcategoria qualcuno sa come fare ??
idem per il risultato dell'annuncio vorrei il titolo al posto. <h3 class="ad-title"><a href="ad_detail.php?id=<?php echo $row_select["id"]; ?>"><?php echo $row_select["title"]; ?></a></h3>


sto impazzendo qualcuno può aiutrami ???
Ciao @Finchelabarcava,
Per fare quello che vuoi tu è molto importante costruire un solido DB.
Partendo da una tabella master devi sapere quante sottocategorie vuoi avere
Ti faccio un esempio banale
CATEGORIA 1 --> Sotto categoria 1 --> sotto sotto categoria 1

Fammi sapere
 

Discussioni simili