Hola "konoyek" quería empezar comentándote que tu duda se resuelve enteramente desde SQL, luego la forma en que que desarrollas tu problema es errónea, no debes hacer dos consultas, con una sola juntando las tablas te bastaría. ¿Sabes hacer un join?
Código SQL:
Ver originalSELECT * FROM categorias c, categoria_relacion cr
WHERE c.id=cr.principal
AND c.estado=1;
http://es.wikipedia.org/wiki/Join