Devi controllare il valore di ritorno di mysql_query
$query = 'YOUR QUERY';
$result = mysql_query($query);
if (!$result) {
trigger_error('Invalid query: ' . mysql_error()." in ".$query);
}
// go ahead and fetch the results using mysql_num_rows.
Se mysql_query fallisce restituisce boolean false invece di una resource .
Quando passi questo boolean valore in mysql_num_rows viene visualizzato questo errore.