İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

kategori yönetimi

hakimi

0
İyinet Üyesi
Katılım
1 Temmuz 2006
Mesajlar
1,356
Reaction score
0
kategori yönetiminde parent ve child larda, nası lbir listeleme yaptırılacak?

A B
1,2 1,2,3
1a,2a
gibi yukarıda ki gibi bir ilişkide, A kategorisine tıkladık mı nasıl hem 1a ya hem 2a ya ait olanlar karışık şekilde gösterilecek bunun için tabloya tüm üst kategorilerie de girmemiz gerekiyor mu?

Sahibindende var ford a tıkladın mı karışık şekilde tüm ford araçlar listeleniyor child a indiğinde focus TDCI Titanyuma kadar seçiyorsun.

biraz mantığı anlatrsanız sevinirim.
 

Antika

0
İyinet Üyesi
Katılım
23 Aralık 2010
Mesajlar
451
Reaction score
18
anahtar kelime : recursive function, hierarchy menu iç içe döngü misali
 

hakimi

0
İyinet Üyesi
Katılım
1 Temmuz 2006
Mesajlar
1,356
Reaction score
0
teşekkürler menü hiyarar şisi tama ancak, listelelme kısmında, yani menu de sorun yok, parent menuye tıkladığımda kategori sayfasında (parent menu boş olduğu halde child lardan listeleme yapmak istiyorum.
Mesela sahibindende ticari araçlar, dediğimizde hem kamyonlar, hem pickuplar, hem minibüslerden örnekler çıkıyor kategorilerde, yani kendisine ait olmayan ama childlarına ait olan elementler karışık olarak listeleniyor.
Bunu yapmak için her birimin içine üst kategorisini de eklemelimiyiz 5 alt kategorisi olan bir parent için bu nasıl olur? yada nasıl yaparız.
 

Antika

0
İyinet Üyesi
Katılım
23 Aralık 2010
Mesajlar
451
Reaction score
18
ul li şeklinde listeleyip, 5 alt kategorisi olan parentin id lerini parent taki id olarak yazmalısın
 

hakimi

0
İyinet Üyesi
Katılım
1 Temmuz 2006
Mesajlar
1,356
Reaction score
0
yine anlatamamışım sanırım benim kategori listelemeyle ilgil ibir sorunum yok. parent kategori linkine tıkladığmıda açılan sayfada, eğer parent a ait içerik yoksa o kategoriye ait child lardan öğe göstersin istiyorum ama 5. dereceden child dan öğe nasıl gösterir?
her derece child için öğe tablosuna bir yer mi ayırmam lazım, yoksa tag sistemi gibi öğe tablosunda bir yer açıp virgülle mi ayırmalıyım.
 
E

Erturk

Misafir
Merhaba

Sırasıyla yapmanız gerekenler şunlar:

Kategori (kid, katadi, link)
Alt Kategori (aid , katid, katadi, link)
Ürün (uid, klink, alink, urunadi, urunresimi, urunaciklamasi, link, vs vs vs)


Yukarıda belirttiklerim SQL yapısıydı.

Ornegin link degeriyle kategoriye girdiniz. (siteadi.com/kategorilinki)

Sorgunuz şu sekilde olmalı;


$klink = $_GET['klink'];
$baglan = mysql_query("select * from urunler where klink='$klink'");
while($yaz = mysql_fetch_assoc($baglan)) {
echo "klink kategorisine ait ürünlerin listesi";
}


Yani demek istediğim, kategori - alt kategori - urunler tablosunun bir birisiyle baglantısı olmalı. urunler tablosunda hem bulundugu ana kategori hemde alt kategoriyi yazdırmalısın ki ona gore sonuc döndüresin.

Opel kategorisindeki Tigra alt kategorisine ait sonucları gostermek içinde;

$baglan = mysql_query("select * from urunler where klink='$klink' and alink='$link'");




Bu şekilde bir yol izleyebilirsin.

Kolay gelsin.
 

hakimi

0
İyinet Üyesi
Katılım
1 Temmuz 2006
Mesajlar
1,356
Reaction score
0
zaman ayırıp yazdığınız için çok teşekkür ederim ben bunların hepsini biliyorum,
demek istediğim ise mesela 5 derece alt kategori var ben araba dediğimde opel de listelesin tigra da, tüplü de, mazotlu da, bunların hepsi için ürün tablosunda bir yer açarsak bayağı uzun bir tablo oluşacak.

Benim bilmediğim daha basit bir yol var mı diye merak ettim.

yada en basitisahibinden bu işi nasıl yapıyor?
sahibindenin kategori ve kategorilere bağlı listeleme yöntemini incelerseniz ne demek istediğimi daha açık anlayacaksınız.

bir ana kategorinin bir tek alt kategorisi olabilir ama bir başkasının ise 10 alt kategorisi olabilir. 10 alt kategorisi olan ana kategoriye tıkladımızda 10. alt kategoriye ait olan ürünü orda göstermemiz için tüm alt kategorileri ürünler tablosunda eklememiz lazım. bu da sorun oluşturur.


Merhaba

Sırasıyla yapmanız gerekenler şunlar:

Kategori (kid, katadi, link)
Alt Kategori (aid , katid, katadi, link)
Ürün (uid, klink, alink, urunadi, urunresimi, urunaciklamasi, link, vs vs vs)


Yukarıda belirttiklerim SQL yapısıydı.

Ornegin link degeriyle kategoriye girdiniz. (siteadi.com/kategorilinki)

Sorgunuz şu sekilde olmalı;


$klink = $_GET['klink'];
$baglan = mysql_query("select * from urunler where klink='$klink'");
while($yaz = mysql_fetch_assoc($baglan)) {
echo "klink kategorisine ait ürünlerin listesi";
}


Yani demek istediğim, kategori - alt kategori - urunler tablosunun bir birisiyle baglantısı olmalı. urunler tablosunda hem bulundugu ana kategori hemde alt kategoriyi yazdırmalısın ki ona gore sonuc döndüresin.

Opel kategorisindeki Tigra alt kategorisine ait sonucları gostermek içinde;

$baglan = mysql_query("select * from urunler where klink='$klink' and alink='$link'");




Bu şekilde bir yol izleyebilirsin.

Kolay gelsin.
 
E

Erturk

Misafir
Hayır sadece baglı oldugu ana kategori ve alt kategoriyi belirtmeniz kafi olacaktır. Geri kalan teferruatlar (tüplü benzinli otomatik vites vs vs) panele koyacagınız birkaç checkbox yada radio buton ve bunlar için açtığınız sql alanları ile yapılabilir.

Örnek : www.uskudarrelaxemlak.com

Kendi yazdıgım bir sistemdir. Panelden bir ilan eklerken once kategorisi (arsa mı villa mı iş yerimi vs vs) sonra bulundugu yer vs vs seciliyor (Veritabanından) ve sonrada radio butonlar yardımıyla sql e o ilan hakkında bilgiler yollanıyor.

Ornek : Evet için SQL degeri 1 Hayır için 2 yazdırabilirsin.

Kiralık : [] Evet [] Hayır
Takaslı : [] Evet [] Hayır

Listeleme yaparkende şu şekilde bir yol izleyebilirsin

$sor = mysql_query("select * from ilanlar where kiralik='1' order by id desc limit 0,10");

Mesela bu sorgu ile kiralık olanlardan son eklenen 10 tanesini yazdırdık. Radio buton ile eklediğin bu alanların özellikle ARAMA yapma kısımında çok faydasını göreceksin.

Hal böyle olunca ilk verdiğim kodları biraz daha detaylı incelersen sadece ana ve alt kategorideki ilanların listelendiğini, bu nedenle tüplüsününde otomatik vitesininde çelik jantlısınında hep çıktığını göreceksin.
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst