pillinetwork hesabınızla giriş yapın.

E-Ticaret Siteleri İçin Kategori Sistemi

Merhaba arkadaşlar,

Birçok kişi kategorilerle ilgili döküman hazırlamış. Bende incelediğim e-ticaret sistemlerinden VirtueMart ta kullanılan kategorileme sistemini sizlerle paylaşmak istedim.

İlk önce veritabanı tarafımızı daha sonra sql tarafını yazacağım. Veritabanı için :
Kategoriler tablomuz :

1
2
3
id - AI( Auto Increment ) // Otomatik artan sayı
cat_name - varchar(255) // Kategori ismimiz
vs. vs.( gerisi çokta önemli değil, gerekli olan bilgileri girersiniz. )

Kategori Bağlantıları tablomuz :

1
2
3
id - AI( Auto Increment )
parent_id - int // üst kategoriyi tutuyor( 0'sa ana kategori demektir )
child_id - int // hangi kategori için olduğunu veriyor.

Tablolarımız bunlar. Örnek eklemeler yapalım :
Kategoriler :

  • id = 1
  • cat_name = "deneme1"
  • id = 2
  • cat_name = "deneme2"
  • id = 3
  • cat_name = "deneme3"
Kategoriler_xref :
  • id = 1
  • parent_id = 0
  • child_id = 1
  • id = 2
  • parent_id = 0
  • child_id = 2
  • id = 3
  • parent_id = 2
  • child_id = 3

Örnek sql kodumuz :
Örnek 1 : Kategori 2nin alt kategorileri İçin

1
select * from kategoriler as kat right join kategoriler_xref as xref on kat.id = xref.parent_id where parent_id = 2

Bunu sorgu olarak döndürdüğümüzde

  • id = 3
  • parent_id = 2
  • child_id = 3

elemanımızı seçtiğini göreceğiz.( 2 kategorinin alt kategorisi )

Örnek 2 : Sadece Ana Kategoriler

1
select * from kategoriler as kat right join kategoriler_xref as xref on kat.id = xref.parent_id where parent_id = 0

Gördüğünüz gibi gayet basit ve istenirse 1 kategori 1'den fazla kategorinin alt kategorisi olabiliyor. Örnek Hiyerarşi( TDK'ya selamlar ) :

  • deneme1
  • ---deneme2
  • deneme3
  • ---deneme2
  • deneme4
  • ---deneme5
  • ------deneme2
    gibi...

Umarım işinize yarar.

Sevgiler...

Oğuz Özcan

/* centrual yazdı. 15 Temmuz 2009 12:10. 0 yorum var */

üye olunpillinetwork sitelerine yorum ekleyebilmek ve daha fazlası için, üye olun ya da giriş yapın.

İlgili Yazılar

Bu yazıyı rapor et. Kural dışı içeriğe rastladığınızda editörlerimize rapor ederek müdahale edilmesini sağlayabilirsiniz. (Hangi durumlarda rapor edebilirim?)

Bu site

Nokta ve pilli ortak yapımı olan kodaman.org hep birlikte içerik üretip gelirini yazarları ile paylaştığımız kolektif bir kod yazarları blogudur. Siz de katılabilirsiniz.

pilliilan

son yorumlar

arama

pillinetwork