Allora ho fatto delle prove e ho sistemato un pò il codice e sono riuscito, a metà, nel mio intento!
Sono riuscito a far stampare a video il contenuto delle due tabelle e mettendole in relazione...così come ho spiegato prima. L'unico problema è che lo script estrae solo il primo record della tabella CATEGORIA e quindi poi solo i records, della tabella SUB_CATEGORIA, che sono relazionati con la tabella precedente.
Vi posto anche il codice php:
Codice PHP:
// estraggo il nome della categoria e ID dalla tabella CATEGORIA
$query_categoria = "SELECT * FROM categoria ";
$result_cat = mysql_query($query_categoria, $db);
while ($row = mysql_fetch_array($result_cat))
{
// stampo il nome della categoria
echo"$row[nome_categoria]
\n";
$id_cat="$row[id_cat]";
// estraggo il nome della subcategoria
// da notare che questa query è annidata nella query precedente
$query_subcategoria = "SELECT * FROM subcategoria WHERE id_categoria='$id_cat' ";
$result_subcategoria = mysql_query($query_subcategoria, $db);
while ($row = mysql_fetch_array($result_subcategoria)){
// stampo il nome della subcategoria
echo"$row[nome_subcategoria],\n";
}
}
Allora con questo codice e modo di procedere riesco a stampare solo la prima CATEGORIA e le subcategorie associate alla prima Categoria. Cioè ottengo questo:
codice:
-CATEGORIA A
subcategoria A-1, subcategoria A-2, subcategoria A-3.
Le altre categorie e subcategorie non vengono stampate!
Perchè?