Kurduğunuz tablo yapısı işinizi görecektir hocam.

Eğer çok fazla kategori olmayacaksatüm kategorileri çekip dizi olarak alabilirsiniz. Sonra php kısmında veya JS ile client tarafında listeletebilirsiniz.

Kategori sayısı çok fazla olacaksa ve alt kategoriler artacak ise ana katgeorileri listeletir, alt kategoriler talep edildiğinde JS ile request atıp DOM a basabilirsiniz.