El problema es el orden de tu código, deberías de refactorizarlo y tratar de optimizarlo y seguir una logica mas concreta ya que te estas repitiendo y por ende pasa lo que pasa, porque estas entremezclando todo.
Por ejemplo si estas validando puedes usar booleanos para verificar, algo asi:
Código PHP:
Ver original<?php
$bValid = true;
if (!validacion1()) {
$mensaje = "error";
$bValid = false;
}
if (!validacion2()) {
$mensaje = "error 2";
$bValid = false;
}
// mas abajo
if ($bValid) {
// insertas en bdd
} else {
echo $error;
}
Saludos.