yazınızdan bişe anlaşılmıyor ama mantık verebilirim.
Kategori tablo yapısı şöyle olsun
id - ust_kategori - sira - icon(isterseniz ekleyin)
ana kategorilerin ust_kategori sütunu 0 değerinde olsun diğer kategorileri eklerkende üste kategori olarak bağlı oldukları kategori olsun. Ust kategori değeri 0 olmayanlar alt kategoridir bunları ayrı olarak çekip icon tanımlayabilirsiniz yada dbde icon sutununa icon girip ordan çektirebilirsiniz.