Sınırsız Kategori Sistemi

'Programlama' forumunda sha. tarafından 1 Oca 2010 tarihinde açılan konu

Konu etiketleri:
  1. sha.

    sha. ..daha çirkin, daha huysuz

    Birçok uygulamada kullanılan diğer adıyla ağaç kategori sistem denilen bu sistem ile sınırsız kategori ve alt kategori oluşturabiliyorsunuz.Bu sistem ile alışveriş sitesinden download sitelerine kadar birçok site yapabilirsiniz.
    Mantığı basittir.Tek bir tablonuz vardır.Bu tablonun içinde(TblKategoriler)

    fldID (AutoNumber)
    fldUstKategoriID (Number)
    fldKategoriAd (Text)

    isim ve değerleriyle 3 adet alanınız vardır.Burada hangi kategorilerin hangi kategoriye ait olduğu fldUstKategoriID adlı alanımızda belirtilir.Bu alanda bir üst kategorinin ID(AutoNumber) olan fldID alanımızdaki değer tutulur.Ana kategoriler sıralandığı zaman link olarak o kategorinin ID numarası link'e Querystring olarak eklenir.Sonraki sayfada ise alınan bu ID değerine ait olan alt kategoriler seçilir.SQL sorgumuzda bu ID numarasına eşit üst kategori ID numaralı olan kategoriler(fldUstKategoriID) seçtirilir.
    Ben burada bilgisayar parçaları ve cep telefonları kategorileri ile örnekler vereceğim.Bilgisayar kategorisinin altında parça türleri ve onunda altında marka isimleri olsun.

    Tek çizgi ile yazdıklarım 1 alt kategoridir.Her çizgi artışında bir alt kategori'yi göstermek içindir.

    Bilgisayar

    - Anakartlar
    -- Intel Marka Anakartlar
    -- ASUS Marka Anakartlar
    -- MSI Marka Anakartlar

    - İşlemciler
    -- Intel İşlemciler
    -- AMD İşlemciler

    - HDD

    - Ekran Kartları
    -- Nvidia Ekran Kartları
    --- Asus Marka Asus Marka Nvidia Ekran Kartları
    --- MSI Marka Asus Marka Nvidia Ekran Kartları
    -- RADEON Ekran Kartları

    Cep Telefonları
    - Nokia Marka Cep Telefonları
    - Sony Ericsson Marka Cep Telefonları
    - Siemens Marka Cep Telefonları


    Bu şekilde 4 kategori altına inebiliriz.Burada 4 tane yazdıklarım sadece örnektir.Bu kategorilerinde altında alt kategori oluşturabilirsiniz.

    Bu örneğe göre elimizde şöyle bir tablo olacaktır.
    [​IMG]

    Burada yapmış olduğumuz örneğe ait tabloyu görebilirsiniz.

    Sayfalarımızda ise linklerinizi

    Kategoriler.asp?KategoriID=<%=ObjRS("fldID")%>

    gibi yani kategori'nin ID numarasını göndermelisiniz. Kategori seçtirme yaparken SQL Sorgumuz şu şekilde olmalıdır.


    Kod:
    <% strSQL = "Select * From TblKategoriler WHERE fldUstKategoriID = " & Request.Querystring("fldKategoriID") & "" %>
    burada Üst kategori ID si almış olduğumuz kategorinin ID numarasına eşit olan kategorileri seçtirme yaptık.Bunu tercihinize göre döngüye sokarak sıralama yapabilirsiniz.

    Örnek verdiğimiz uygulama ile ilgili bir test versiyonu yaptık.Bu uygulamada yeni kategoriler ekleyebilirsiniz.

    http://www.asprehberi.net/uygulamalar/agackategori/Kategoriler.asp
     

Bu Sayfayı Paylaş