Ciao a tutti,
spero di non fare una domanda troppo stupida.
Sto cercando di creare un artigianale sistema di gestione categoria-sottocategoria-prodotto.
Il db che ho creato è strutturato così:

CATEGORIA
id_categoria
nome_categoria

SOTTOCATEGORIA
id_sottocategoria
id_categoria
nome_sottocategoria

PRODOTTI
id_prodotto
id_sottocategoria


Ora quello che volevo fare era la parte di visualizzazione.
Quello che cerco di creare è una cosa simile:

Categoria 1
- Sottocategoria a
- Sottocategoria b

Categoria 2
- Sottocategoria c
- Sottocategoria d
- Sottocategoria e

e poi, cliccando sulla sottocategoria di riferimento, far vedere il listato dei prodotti.

La soluzione che mi è venuta in mente, ma che temo essere decisamente complessa e poco elegante, è quella di fare una query per estrapolare le categorie e nel ciclo (un classico while($row = mysql_fetch_array() ) di presentazione, prima della sua chiusura far partire una seconda query di ricerca delle sottocategorie con condizione WHERE...

Provo a scrivere il codice, magari così risulta più chiaro




codice:
<ul>
<?php
/*Richiamo le CATEGORIE*/
$query = "SELECT * FROM categorie";
$results = mysql_query($query);
while ($row = mysql_fetch_array($results)){
$id_categoria = $row['id_categoria'];
$categoria = $row['nome_categoria'];
?>
	[*]<div class="categoria"><?php echo $categoria; ?></div>
		<ul> <?php
		/*Richiamo le SOTTOCATEGORIE*/
		$query = "SELECT * FROM sottocategorie WHERE id_categoria = $id_categoria";
		$ris_sottoc = mysql_query($query);
		while ($sottocat = mysql_fetch_array($ris_sottoc)){
		$id_sottocategoria = $sottocat['id'];
		$sottocategoria = $sottocat['nome_sottocategoria'];
		?> 
		[*]<div class="sottocat"><?php echo $sottocategoria; ?></div>
		<?php } ?>[/list]
        
	<?php } ?>[/list]
Credo che sia un po' contorto, e che non sia propriamente elegante.
Ma non ho idea di come poter risolvere la faccenda in altro modo.

A parte gli insulti (che merito, lo so)... qualcuno potrebbe dirmi se esiste un metodo più semplice per raggiungere il risultato desiderato?
Voi cinture-nere di php/mysql, come le risolvete queste visualizzazioni?