Hola AlexWeb...
Creo que te estás liando sin necesidad
La lógica es sencilla, si hay error, hay un ROLLBACK, si se llevó a cabo satisfactoriamente la consulta, aplicas COMMIT.
Las transacciones tienen tres instrucciones, BEGIN(comienza una transacción), COMMIT(confirma una transacción), ROLLBACK(quiebra, deshace una transacción).
La idea sería:
Código php:
Ver original//comienza transacción
$ini_tran="BEGIN;";
//se ejecuta query
$query="select * from .... bla bla bla"
if(!$result)
{
//si hubo error se ejecuta un rollback
$fin_tran="ROLLBACK;";
}
else
{
//sino, quiere decir que se ejecutó satisfactoriamente, entonces se confirma
$fin_tran="COMMIT;";
}
Espero lo entiendas...
Saludos