E-Ticaret Siteleri Benzeri Kategori - Kayıt İlişkisi
Yaptığım bir proje için Kategori - Kayıt ilişkisinde kafamda oturmayan bir konu var. Projemin E-Ticaret sitesi ile alakası yok ama benziyor.
+ Telefon
+ Android
- Samsung
- Xiaomi
+ IOS
- Apple
Bu şeklide bir kategori yapımız olduğunu düşünürsek, burada ürünler nereye kaydedilir. Yani Ürün Kategori ID'si neresi olur.
Kendi mantığıma göre; Samsung, Xiaomi veya Apple altına kayıt edilmeli. Çünkü ya en üst kategoriye kaydedicen yada en alt kategoriye. Tabiki mantıklı olan en alt kategoriye kaydetmek.
Ancak o zamanda kafama şu konu takılıyor. Son ketegoriye ürünleri kaydettim. Elemanın biri geldi;
Samsung Kategorisinin altına; Note ve Galaxy kategorilerini ekledi. Ne olcak bundan önceki tüm kayıtlar, Samsung kategorisinde kaldı.
Sizce saçmalıyormuyum :)
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (2)
eğer Samsung kategorisine ürün kaydedeceksen bence şu şekilde kaydetmen gerek
Telefon,Android,Samsung
Yani kategorinin tüm üst kategorilerini de dahil ederek kayıt edebilirsin. ID ile örnek verecek olursak
$category = '1,3,6';
// 1 = Telefon
// 3 = Android
// 6 = Samsung
Bu mantıkta ürünler tablonda 1,3,6
diye olacağından ararken FIND_IN_SET()
kullanacaksın mysql'de. Örneğin
// 3 android
$query = $db->query('select * from products where find_in_set(product_category, 3)')->fetchAll(PDO::FETCH_ASSOC);
gibi. Böylece Telefon kategorisine de girse Android kategorisine de girse ilgili ürünü görebilecek. Genelde e-ticaret sitelerinde bu mantıkta görürsün ürünleri