Es más un problema de PHP que de MySQL.
Si la inserción no fue exitosa, significa que se produjo un error. No hay otra posibilidad porque en bases de datos las cosas o funcionan o no funcionan. No hay puntos intermedios.
En el caso del uso de lenguajes de computación, como el PHP, la función que se usa tiene un valor de retorno que te indica si se realizó o no, y de lo contrario puede obtener el valor del error dado.
Para temas de programación, tienes que postear en el
Foro de PHP, que es donde te van a ayudar mejor.
Por el uso de mysql_query y sus retornos:
PHP: mysql_query()
Prestar atención especialmente a esto:
Cita: For other type of SQL statements, INSERT, UPDATE, DELETE, DROP, etc, mysql_query() returns TRUE on success or FALSE on error.