Puedes hacerlo con una sóla consulta con la tabla subtemas y JOIN de la tabla temas, ordenado por ID del tema, ejemplo:
Código SQL:
Ver originalSELECT s.*, t.nombre AS nombretema
FROM subtemas s
JOIN temas t ON s.id_tema = t.id
ORDER BY s.id_tema
Después en PHP tu ciclo sería algo como:
Código:
ultimo_tema = 0; // Esto es sólo para control
while(/* leer registro de la consulta */) {
si(ultimo_tema != subtema['id_tema']) {
ultimo_tema = subtema['id_tema'];
// Aquí muestras el tema, usando nombretema para el campo temas.nombre
}
// Aquí muestras el subtema
}
Bueno, esa es la forma básica, te toca "traducirlo" a PHP y aplicar el HTML necesario