Is seems that at least for SQL deletes, you should pass a MySQL link resource (from a mysql_connect call), not a MySQL result (from a mysql_query) otherwise you will get an error.
(PHP 4, PHP 5 < 5.3.0)
msql_affected_rows — Returns number of affected rows
$result
) : int
Returns number of affected rows by the last SELECT, UPDATE or DELETE
query associated with result
.
result
The result resource that is being evaluated. This result comes from a call to msql_query().
Returns the number of affected rows on success, or FALSE
on error.