ok ho risolto così, se vi può essere utile:

Codice PHP:
function menu($cat_id '0'$sezioni_storiche=array()) { 

    
$construct_query fun_db_query ("select sup_cat_id 
                                     from " 
TABLE_RICETTE_CAT 
                                     where ric_cat_id = '" 
$cat_id "' 
                                     LIMIT 1"
);
    
$construct fun_db_fetch_array ($construct_query);

    
$construct_query2 fun_db_query ("select ric_cat_id, sup_cat_id, name 
                                          from " 
TABLE_RICETTE_CAT 
                                          where sup_cat_id = '" 
$construct['sup_cat_id'] . "' 
                                          order by v_order"
);
    while (
$row_sezione=fun_db_fetch_array($construct_query2))
    {
        
$sup_cat $row_sezione['sup_cat_id'];
        
$ric_cat $row_sezione['ric_cat_id'];
        
$ric_name $row_sezione['name'];
        if (
$_GET['cat_id'] == $row_sezione['ric_cat_id'])
            {
                
$elenco_sezioni .= '<span class="navbar_testo">' $ric_name '</span>';
            }
            else
            {
                
$elenco_sezioni .= '[url="' fun_href_link(FILENAME_RICETTE"]' . $ric_name . '[/url]';
            }
            
    }

    
$sezioni_storiche[$sup_cat]=$elenco_sezioni
    
    if (
$sup_cat>0)    $sezioni_storiche=menu($sup_cat$sezioni_storiche); 
    
    return 
$sezioni_storiche;