Non funziona perchè è un algoritmo sbagliato, prova così:

Codice PHP:
$result mysql_query("SELECT * FROM categorie ORDER BY id_ref ASC");

while (
$row mysql_fetch_array($resultMYSQL_ASSOC)) {
{
  switch ( 
$row["id_ref"] )
  {
    case 
1:
    
/* crei menu 1 */
    
$tendina_1 .= "<ul>".$row["categoria"]."[/list]\n" ;
    break ;

    case 
2:
    
/* crei menu 2 */
    
$tendina_2 .= "<ul>".$row["categoria"]."[/list]\n" ;
    break;

    case 
3:
    
/* crei menu 2 */
    
$tendina_3 .= "<ul>".$row["categoria"]."[/list]\n" ;
    break;
    
    case 
4:
    
/* crei menu 2 */
    
$tendina_4 .= "<ul>".$row["categoria"]."[/list]\n" ;
    break;
  }  
}

echo 
$tendina_1