Hai un errore di base....

$result = mysql_query($query, $db);
non raccoglie il risultato ma l'identificatore della risorsa impegnata dal risultato della query.

quindi in $result hai un identificativo che verra' usato da mysql_fetch_* per leggere le righe dal buffer che corrisponde all'id resource # scritto in $result.

Per sapere quante righe sono state messe in questo buffer di output da mysql, lo potrai conoscere utilizzando la funzione mysql_num_rows
a cui passerai la variabile $result.

quindi:

$result = mysql_query($query, $db);
$num_tot = mysql_num_rows($result);