v2.5.2
Giriş yap

çoklu kategoriye göre veri listeleme sorunu

rephp7
844 defa görüntülendi ve 2 kişi tarafından değerlendirildi

Merhabalar,

kategoriler tablom:

IDk_adik_id
1Enerji1
2Teknoloji2
3Mekanik3
4Robot4

yazilar tablom:

IDkategori_idyazi_baslik
11,3deneme 1
22,4deneme 2
31, 3, 4deneme 3
42deneme 4

Verileri normalde bu şekilde çekiyorum:
("yazilar where kategori_id=$k_id","","","ORDER BY ID DESC")

Böyle yazınca sadece yazı başlığım (deneme 1) sadece bir kategoride (Enerji) görünüyor. Diğer kategorinin (Mekanik) listesinde görünmüyor.
Explode ile parçalamaya çalıştım:
("yazilar where explode(',',kategori_id)=$k_id","","","ORDER BY ID DESC")
Bu seferde tabloda veri yok olarak dönüyor.

kategori_id yi nasıl parçalayıp $k_id ile eşleştirebilirim.
Birden fazla listede nasıl görünmesini sağlarım.
Örneğin: deneme 1 yazısı hem Eneji hem Mekanik kategorisinin listesine girmeli.

fatihozpolat
1222 gün önce

virgül ile ayırmak yerine başka bir tablo oluşturup çoğa çok ilişki kurmak daha mantıklı olacaktır.

Örnek tablo şeması:
https://dbdiagram.io/d/60f555684ed9be1c05d297b7

bu mantıkla örneğim 3 numaralı yazıya ait kategorileri görmek istersen:
select * from yazi_kategori where yazi_id=3
aynı mantıkla 5 numaralı kategorideki yazıları listelemek istersen:
select * from yazi_kategori where kategori_id=5
şeklinde sorgu yazabilirsin.