In realtà ho omesso di scrivere l'"ul" che ho prima e dopo il while in quanto non c'entra con quel che stiamo vedendo


Mi è venuta in mente una soluzione (forse) migliore,

1. Dico di estrarre i valori con un "order by 'cat' ",
2. Faccio una condizione che dice: (se il "cat" è uguale al precedente, stampa "subcat"..., altrimenti stampa "cat" e "subcat")

Credete sia una soluzione? soprattutto fattibile?



EDIT:
Ordinando l'estrazione per cat e dopo subcat, sono riuscito ad ottenere ciò che volevo
Questo è il codice che ho utilizzato:
Codice PHP:
$TmpCat 0;

if (
$conto1) {
    print 
"<center>

La ricerca non ha prodotto nessun risultato</p>/center>"
;
}
else {
    echo 
"<ul>";
        while (
$conto $i) {
            
$Cat mysql_result($risultati,$i,'Marca');
            
$SubCat mysql_result($risultati,$i,'Modello');
    if(
$Cat == $TmpCat){
        print 
"<ul>$SubCat[/list]";
}
else{
        print 
"[*][b]$Cat[/b]
"
;
        print 
"<ul>$SubCat[/list]";
}
            
$TmpCat $Cat;
            
$i++;
        }
    echo 
"[/list]";
    } 
Ora prima che passi alla formattazione c'è qualche consiglio che mi potete dare, cioè qualche errore che posso aver fatto o qualche miglioria da poter apportare??