There is currently no ibase_affected_rows function.
From reading the PHP manual, ibase_query returns false only if the query does not execute, and will return true even if the number of affected rows is zero (which is the correct behaviour).
However I seem to recall, perhaps in a old version of PHP, that in the case where the number of affected rows is zero, ibase_query returns false. It is worth checking whether that still is the case. If it is still the case, the false can mean either that the query failed or there were no affected rows.
Also, if it is working in this (broken) manner, don't count on it staying that way in future versions.
If you are comfortable with recompiling PHP and running a 'non-standard' version, I discovered a patch for Interbase support at http://www.geocrawler.com/lists/3/Web/5/375/4472085/.. I can not say whether this patch works or not, but perhaps it is worth looking at.
It is a pity that support for Interbase/Firebird in PHP is relatively poor compared to MySQL 🙁