Tava cikla gadījumā beigās sanāk lieks komats, kas parasti ir cēlonis neejošam JS.
Es personīgi ieteiktu visu salikt masīvā, un izvadīt pēc tam ar json_encode($masiivs); citādi tavā gadījumā, ja tekstā būs kāds neatļauts simbols, tavs JSON saturs tiks salauzts.
Skatīt šeit: http://php.net/manual/en/function.json-encode.php
Kas šī par mistisku sintaksi?
WHERE category_id = (('1'), ('2'))
Ja vajag vairākus id, tad var
WHERE category_id IN (1,2,3,4,5,6) vai WHERE category_id = 1 OR category_id = 2 OR category_id = 3 ...
Kontrolierī, izsaucot attiecīgo modeļa metodi, atlasi kategoriju sarakstu, padod skatam, un skatā izdrukā sarakstiņu. Kur problēmas?
Vispār, šai problēmai īsti nav nekāda sakara ar ietvaru, ko lieto...