lostyazilim

Başlık ve Alt Başlık Problemi için yardım talep ediyorum

4 Mesajlar 794 Okunma
lstbozum
wmaraci reklam

64552 64552 WM Aracı Anonim Üyelik
  • Üyelik 31.05.2016
  • Yaş/Cinsiyet - /
  • Meslek
  • Konum
  • Ad Soyad ** **
  • Mesajlar 173
  • Beğeniler 1 / 21
  • Ticaret 2, (%100)
Merhaba arkadaşlar benim bir sorum olacak. Açık bir şekilde durumu anlatacağım...

Kategoriler

--- id
--- kategori_baslik

konular

--- id
--- konu_baslik
--- kategori

adında iki tablo var. Öyle bir şey yapmalıyım ki sonuç aşağıdaki gibi olmalı.

Ana başlık 1

alt başlık 1
alt başlık 2

Ana başlık 2

alt başlık 3

--------------------------------------------------------

yani şöyle olmamalı...

ana başlık 1

alt başlık 1

ana başlık 1

alt başlık 2

ana başlık 2

alt başlık 3

kısacası, alt başlıkları tek bir ana başlık altında toplamak...
 

 

wmaraci
reklam

kelebek kelebek WM Aracı Kullanıcı
  • Üyelik 11.05.2013
  • Yaş/Cinsiyet 32 / E
  • Meslek Geliştirici
  • Konum Malatya
  • Ad Soyad E** K**
  • Mesajlar 3142
  • Beğeniler 60 / 764
  • Ticaret 5, (%100)
konulara üst kodu diye bir alan eklersiniz. Eklediğiniz alana üst konu olmasını istediğiniz yazının idsini yazar ve ona göre çekersiniz. Php ile sınırsız alt kategori mantığı diye aratırsanız aynı mantıkla işinizi çözersiniz.
 

 

viper302 viper302 WM Aracı Kullanıcı
  • Üyelik 09.08.2014
  • Yaş/Cinsiyet 37 / E
  • Meslek Siber Güvenlik Danışmanı
  • Konum İstanbul Anadolu
  • Ad Soyad K** A**
  • Mesajlar 294
  • Beğeniler 19 / 26
  • Ticaret 3, (%100)
TabloAdi
----BaslikID
----BaslikAdi
----AnaBaslikID

gibi bir tablon olsun, BaslikID ve AnaBaslikID int olacak, BaslikAdi varchar 50 karakter veya artık kaç karakterse o kadar olacak. AnaBaslikID varsayılan değer 1 olsun.

her veri eklendiğinde eğer ana başlık ise AnaBaslikID değeri 0 olarak eklenecek, eğer alt başlık ise AnaBaslikID 1,3,5 artık her neyse ona göre eklenecek.

Veriyi çekerken

SELECT Tbl1.BaslikID BID1, Tbl1.BaslikAdi BA1, Tbl1.AnaBaslikID, Tbl2.BaslikID BID2, Tbl2.BaslikAdi BA2 FROM `tablo1` Tbl1 JOIN tablo1 Tbl2 ON Tbl1.AnaBaslikID = Tbl2.BaslikID

Yukarıdaki sorgu ne yapar şöyle anlatayım. Aynı 2 tabloyu birleştirdik birine Tbl1 diğerine Tbl2 dedik. Daha sonra veriler çakışmasın diye kolonları ayrıştırdık ve yeni isimler verdik. Ufak bir test yaptım sadece alt başlıkları listeliyor ve ana başlıkları da çekiyor. Eğer olurda ana başlıkları listelerse WHERE AnaBaslikID > 0 olarak eklemen gerekli diye düşünüyorum. Yukarıdaki kod sorunsuz bir şekilde verileri çekmesi lazım.



Pardon ya :D ben olmaması gereken tarafı istediğini sandım. Bunun için iki sorgu yapman gerekecek. İç İçe Kategori mantığını iç içe başlık şeklinde yapacaksın. Yarın öğlene kadar çözemezsen öğleden sonra bakarım soruna.
 

 

64552 64552 WM Aracı Anonim Üyelik
  • Üyelik 31.05.2016
  • Yaş/Cinsiyet - /
  • Meslek
  • Konum
  • Ad Soyad ** **
  • Mesajlar 173
  • Beğeniler 1 / 21
  • Ticaret 2, (%100)
bu sorunu çözdüm arkadaşlar ve evet hocam viper302 tam da senin dediğin gibi 2 sorgu ile hallettim :)
viper302

kişi bu mesajı beğendi.

wmaraci
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al