veritabanında aşagıdaki kategoriler tablosunu kullanabilirsin. alt kategoriler diye tablo acmana gerek yok.
CREATE TABLE `kategori` (
`id` int(11) NOT NULL auto_increment,
`kategoriadi` varchar(255) NOT NULL,
`pozisyon` int(11) NOT NULL default '1',
`anakatid` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
id - kategori id
kategoriadi - kategori adı
pozisyon - kategori pozisyonu
anakatid - üst kategori id varsayılan 0
burada en önemli nokta anakatid kısmıdır.
verileri cekerken anakatid ye göre cekersek o kategorinin alt kategorilerini listeleriz.
anakatid 0 olanlar ana kategoridir.
kategori kaydetme sırasında anakategori seçmessek anakatid 0 olarak geçicektir. anakategori secersek anakatid ye tablodaki kategorinin id sini atayacaktır.
kategoriye kaydedecegin alt veriler için ayrı tablo olusturman lazım.