Il percorso dell'immagine non c'entra niente perchè altrimenti non avrebbe dato errore mysql ma semplicemente non sarebbe stata visualizzata l'immagine.
Quando ti capita di vedere un errore del genere di solto è perchè la query non è corretta (quindi, come detto, restituisce un risultato vuoto).
Per ciò che riguarda la stringa e tutto il resto hai usato il procedimento corretto all'inizio
Codice PHP:
$result = mysql_query($query, $db);
while ($row = mysql_fetch_array($result))
e poi hai corretto in modo errato (come ti è anche stato detto!:
Codice PHP:
$query = "SELECT user_avatar FROM phpbb_users ORDER BY avatar DESC LIMIT 0,5";
while ($row = mysql_fetch_array($query))
Detto questo passiamo a trovare l'errore.
Innanzitutto devi riutilizzare il primo metodo per eseguire una query:
Codice PHP:
$result = mysql_query($query, $db);
while ($row = mysql_fetch_array($result))
Ma così non sappiamo dove sia l'errore. Risolviamo in modo molto semplice aggiungendo un die e richiamando l'errore generato da php in questo modo:
Codice PHP:
$result = mysql_query($query, $db) or die( mysql_error() ) ;
while ($row = mysql_fetch_array($result))
Adesso ti verrà restituito un errore nella query: postalo se non riesci a capire da solo dove sbagli! Ciao!