Codice PHP:
<?php
$sql = "SELECT * FROM tabella_menu WHERE genitore = '0' ORDER BY voce_menu ASC";
$result = mysql_query($sql);
$j=0;
while($menu = mysql_fetch_array($result))
{
if($menu['genitore'] == 0)
{
print("[url='#']".$menu['voce_menu']."[/url]
");
$sql = "SELECT * FROM tabella_menu WHERE genitore = '".$menu['id_menu']."' ORDER BY voce_menu ASC";
$subresult = mysql_query($sql);
while ($submenu = mysql_fetch_array($subresult))
{
print("- [url='#']".$submenu['voce_menu']."[/url]
");
}
}
$j++;
}
?>
Volendo, puoi storare tutto subito in un array multidimensionale, risparmiando le sotto query per i i sottomenu, ma direi che cosi è più semplice da capire (sempre ammesso che sto giro abbia capito cos aintendevi^^).