Vous n'avez pas besoin d'utiliser mysqli. Vous pouvez simplement émettre les commandes de transaction sous forme de requêtes.
Donc pour votre exemple :
mysql_query("start transaction;");
//db_res calls a custom function that performs a mysql_query on the query
$res1 = db_res("SELECT c1, c2 FROM t1 WHERE c5 = 3");
$res2 = db_res("UPDATE t2 SET c1 = 5 WHERE c2 = 10");
$res3 = db_res("DELETE FROM t3 WHERE c1 = 20");
if( $res1 && $res2 && $res3 )
{
mysql_query("commit;");
}
else
{
mysql_query("rollback;");
}
En passant, si vous envisagez de passer à mysqli, ne le faites pas. Passez plutôt à PDO, c'est beaucoup plus sain.