dovrei stampare gli utenti con piu messaggi privati inviati

il mio procedimento è il seguente

Codice PHP:
//recupero il mittente
 
$messaggiati=mysql_query("SELECT DISTINCT mittente, userID, username
                                                   FROM t_messaggi_privati, t_utenti 
                                                   WHERE mittente = userID "
);
 
$ris=mysql_fetch_array($messaggiati);

//dal mittente conto il n° di messaggi privati inviati dallo stesso
 
while($ris){
          
$mittente=$ris["mittente"];
          
$count "SELECT COUNT(mittente)
                        FROM t_messaggi_privati 
               WHERE mittente = 
$mittente ";
          
$query=mysql_query($count);
          
$result=mysql_result($query0);
//result quindi conterrà il n° di messaggi inviati per ogni utente

//ora creo la query per mandare in stampa username (n° messaggi inviati) ordinandoli per $result ed è qui che si impallina...se levo order by result mi stampa nomi e n° messaggi inviati alla rinfusa ordinandoli per mittente...ma io vorrei ordinarli per n° messaggi

$mess=mysql_query("SELECT DISTINCT mittente, username
           FROM t_messaggi_privati, t_utenti 
           WHERE mittente = userID 
           AND mittente = 
$mittente 
           ORDER BY 
$result DESC");
          
$record=mysql_fetch_array($mess);

echo (
$record["username"]." (".$result.")
"
);
          
$ris=mysql_fetch_array($messaggiati);