v2.5.2
Giriş yap

Sınırsız kategorileri listelemek

mb
289 defa görüntülendi

Merhabalar
Sınırsız kategorim var ve bunları menü de listelemek istiyorum.
Normal listelerken sıkıntı olmuyor ama submenu yapmak istediğim de olmadı.

Kullandığım listeleme fonksiyonu


function MenuYaz($KategoriUstIDegeri=0, $BoslukDegeri=0){
    global $db;

    $KategoriSorgusu			=	$db->prepare("SELECT * FROM kategoriler WHERE kategori_ust_id = ?");
    $KategoriSorgusu->execute([$KategoriUstIDegeri]);
    $KategoriSorgusuSayi		=	$KategoriSorgusu->rowCount();
    $KategoriSorugusuKayitlari	=	$KategoriSorgusu->fetchAll(PDO::FETCH_ASSOC);

    f($KategoriSorgusuSayi>0){
        foreach($KategoriSorugusuKayitlari as $Kayitlar){
            $KategoriID			=	 $Kayitlar["kategori_id"];
            $KategoriUstID		=	 $Kayitlar["kategori_ust_id"];
            $KategoriAdi	    =	 $Kayitlar["kategori_adi"];
            $KategoriLink   	=	 $Kayitlar["kategori_link"];
            echo "<li>" . str_repeat("&nbsp;", $BoslukDegeri). $KategoriAdi . "</li>";
            MenuYaz($KategoriID, $BoslukDegeri+10);
        }
    }
}

Yapmak istediğim menu


   <ul>
                                    <li><a href="link.php"><span>BİLGİSAYAR <i class="fal fa-angle-down"></i></span></a>
                                        <ul class="submenu">
                                            <li><a href="link.php">ASUS</a></li>
                                            <li><a href="link.php">LENOVA</a></li>
                                            <li><a href="link.php">HP</a></li>
                                        </ul>
                                    </li>
                                    <li><a href="link.php"><span>ELEKTRONİK</span></a></li>
                                    <li><a href="link.php"><span>KIYAFET</span></a></li>
                                    <li><a href="link.php"><span>MUTFAK</span></a></li>

                                </ul>

Kategorileri menü içerisin de nasıl gösterebilirim.

emmir2
626 gün önce
function MenuYaz($KategoriUstIDegeri = 0, $BoslukDegeri = 0){
    global $db;

    $KategoriSorgusu = $db->prepare("SELECT * FROM kategoriler WHERE kategori_ust_id = ?");
    $KategoriSorgusu->execute([$KategoriUstIDegeri]);
    $KategoriSorgusuSayi = $KategoriSorgusu->rowCount();
    $KategoriSorugusuKayitlari = $KategoriSorgusu->fetchAll(PDO::FETCH_ASSOC);

    if ($KategoriSorgusuSayi > 0) {
        echo "<ul>";
        foreach($KategoriSorugusuKayitlari as $Kayitlar) {
            $KategoriID = $Kayitlar["kategori_id"];
            $KategoriUstID = $Kayitlar["kategori_ust_id"];
            $KategoriAdi = $Kayitlar["kategori_adi"];
            $KategoriLink = $Kayitlar["kategori_link"];

            $SubKategoriSorgusu = $db->prepare("SELECT * FROM kategoriler WHERE kategori_ust_id = ?");
            $SubKategoriSorgusu->execute([$KategoriID]);
            $SubKategoriSorgusuSayi = $SubKategoriSorgusu->rowCount();
            $class = "";
            if ($SubKategoriSorgusuSayi > 0) {
                $class = " class='submenu'";
            }

            echo "<li><a href='$KategoriLink'><span>$KategoriAdi";
            if ($SubKategoriSorgusuSayi > 0) {
                echo " <i class='fal fa-angle-down'></i>";
            }
            echo "</span></a>";
            if ($SubKategoriSorgusuSayi > 0) {
                echo "<ul$class>";
                MenuYaz($KategoriID, $BoslukDegeri + 10);
                echo "</ul>";
            }
            echo "</li>";
        }
        echo "</ul>";
    }
}