• 30-12-2019, 22:45:00
    #1

    Merhaba ben üst veritabanında oluşturduğum her menüye otomatik anasayfa header menü kısmında çıkıyor sıkıntısız fakat bunlara alt menü vs'de oluşturmak istiyorum nasıl yapabilirim yaptığımı sanıyordum ama sanırım yorgunum.

    Örnek TEST menüsüne gelince veritabanında o menüye ait olan alt menüler çıksın istiyorum mantığı basit aslında

    TEST menüsünün sabit kat kodu 3
    ve yeni veritabanında altmenu=3 kısmına hangi isim geldiyse örnek R10 yazdım diyelim otomatik

    Menüler
    - TEST
    • R10
    diye çıkması gerekiyor ama beceremedim.

    <?php
    
    $sayfa = $db->prepare("select * from menu order by kat desc");
    $sayfa->execute(array());
    $s = $sayfa->fetchALL(PDO::FETCH_ASSOC);
    $x = $sayfa->rowCount();
    
    if($x){
    echo '<li><a href="?sayfa=index"><span>Anasayfa</span></a></li>';
    foreach($s as $m){
    
    ?>
    
    <?php echo '<li class="active"><a class="level-top" href="?sayfa=bolum&kat='.$m["kat"].'"><span>'.$m["menu"].'</span></a></li>';
    }
    
    
    }else{
    
    
    
    }
    
    ?>
    MENÜ ÇEKTİĞİM KODUM BURASI
  • 30-12-2019, 22:51:43
    #2
    querystring ile hangı sayfada ısen o değeri al veri tabanında sorgula cıkanları yazdır.
    ayrıca hangı sayfada oldugun bılgısını alırsın header da gosterır o sıkkı yakarsın.
    cok temek bısey soruyorsun bu kadar karmasık sorarsan kımse cevap vermez yada ne ıstedıgını anlamaz.
  • 30-12-2019, 22:56:14
    #3
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Hocam size bir tavsiye, ilerlemeden önce yazımınızı standardize edin. Bu kodları sizden başka kimse anlayamaz.
  • 31-12-2019, 00:31:22
    #4
    Öncelikli olarak veritabanın da menü elamanının üst menü bilgisini tutmalısın. Get parametresinden gelen parent bilgisine göre alt menulerini cekebilirsin.
    "Recursive Menü " ile arama yaparsan yuzlerce ornek bulabilirsin.
    Ve son olarak kod yazım standartlarını araştırmalısın. Girintiler , isimlendirmeler anlaşılır olmalı.
  • 31-12-2019, 00:36:24
    #5
    snnysf adlı üyeden alıntı: mesajı görüntüle
    querystring ile hangı sayfada ısen o değeri al veri tabanında sorgula cıkanları yazdır.
    ayrıca hangı sayfada oldugun bılgısını alırsın header da gosterır o sıkkı yakarsın.
    cok temek bısey soruyorsun bu kadar karmasık sorarsan kımse cevap vermez yada ne ıstedıgını anlamaz.
    bybrown adlı üyeden alıntı: mesajı görüntüle
    Hocam size bir tavsiye, ilerlemeden önce yazımınızı standardize edin. Bu kodları sizden başka kimse anlayamaz.
    sky adlı üyeden alıntı: mesajı görüntüle
    Öncelikli olarak veritabanın da menü elamanının üst menü bilgisini tutmalısın. Get parametresinden gelen parent bilgisine göre alt menulerini cekebilirsin.
    "Recursive Menü " ile arama yaparsan yuzlerce ornek bulabilirsin.
    Ve son olarak kod yazım standartlarını araştırmalısın. Girintiler , isimlendirmeler anlaşılır olmalı.
    teşekkürler dedklerinize bakıcam çok müsait olamıyorum kafam yorgun baya belki uykumda bi sistem gelir aklıma teşekkürler
  • 31-12-2019, 00:51:05
    #6
    Aşağıdaki yapıyı inceleyip bir deneyin hocam.

    Php kodlar;
    https://codeshare.io/2EqNJv


    SQL kodlar;
    https://codeshare.io/5MpVJq


    Görünüm;


    Bu arada @Coskun; bey , kod paylaşırken çok fazla sıkıntı yaşıyoruz. Kodlar editör tarafından değiştiriliyor veya engelleniyor.
  • 31-12-2019, 12:03:07
    #7
    BND
    Üyeliği durduruldu
    Bunun için mysql'de bir alan daha gerekiyor. Örn ustkatid. ustkatid'si boş olanlar ana menü, dolu olanlar ustkatid'ye göre alt menü yapılacak.

    ana menü do while / foreach'i {
    if ($x['ustkatid']>=1) {
    alt menü do while / foreach'i {
    ...
    }
    }
    ...
    }
  • 01-01-2020, 00:44:22
    #8
    coder63 adlı üyeden alıntı: mesajı görüntüle
    aşağıdaki yapıyı inceleyip bir deneyin hocam.

    php kodlar;
    https://codeshare.io/2eqnjv


    sql kodlar;
    https://codeshare.io/5mpvjq


    görünüm;


    bu arada @Coskun; bey , kod paylaşırken çok fazla sıkıntı yaşıyoruz. Kodlar editör tarafından değiştiriliyor veya engelleniyor.
    işimi gördü teşekkür ederim