Cos'è che sbaglio sull'uso di 'mysql_affected_rows' che mi viene restituito sempre 'zero' ?

$query = "UPDATE user
SET campo_appoggio = 10
WHERE id = '5'";

if (!mysql_query($query, $db))
{echo "Update KO: ".mysql_error()." - errore sql: ".mysql_errno();}
else
{mysql_query($query);
echo "Update OK" . '
';
$num = mysql_affected_rows();
echo "Modificate $num righe";}

echo "
";