Buenas!
Tengo una pagina para insertar registros a una db mysql.
envio datos de la página solicitar_usuario.php que tiene el formulario
 a la pagina insertar_solicitud.php con variables $_POST
luego en las primeras líneas valido si los campos son vacíos y direcciono en el caso de que asi sea con un header.
despues de las lineas de validacion pongo la consulta SQL y la inserto
el problema es. 
que si ocurre un error (campo vacío), me direcciona tal como quiero, pero a su vez me inserta en la base de datos o.O
aquí esta el código:    
Código PHP:
Ver original- if(isset($_POST['cargo']) && $_POST['cargo'] == "") 
- { 
-     if(isset($_POST['codigo_humano']) && $_POST['codigo_humano'] != "") 
-     { 
-         $codigo_humano_sent = $_POST['codigo_humano']; 
-     }elseif(!isset($_POST['codigo_humano'])){ 
-         $codigo_humano_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nac']) && $_POST['fecha_nac'] != "") 
-     { 
-         $fecha_nac_sent = $_POST['fecha_nac']; 
-     }elseif(!isset($_POST['fecha_nac'])){ 
-         $fecha_nac_sent = ""; 
-     } 
-     if(isset($_POST['telefono']) && $_POST['telefono'] != "") 
-     { 
-         $telefono_sent = $_POST['telefono']; 
-     }elseif(!isset($_POST['telefono'])){ 
-         $telefono_sent = ""; 
-     } 
-     if(isset($_POST['email']) && $_POST['email'] != "") 
-     { 
-         $email_sent = $_POST['email']; 
-     }elseif(!isset($_POST['email'])){ 
-         $email_sent = ""; 
-     } 
-     if(isset($_POST['ubicacion']) && $_POST['ubicacion'] != "") 
-     { 
-         $ubicacion_sent = $_POST['ubicacion']; 
-     }elseif(!isset($_POST['ubicacion'])){ 
-         $ubicacion_sent = ""; 
-     } 
- #    
-     if(isset($_POST['telefono2']) && $_POST['telefono2'] != "") 
-     { 
-         $telefono2_sent = $_POST['telefono2']; 
-     }elseif(!isset($_POST['telefono2'])){ 
-         $telefono2_sent = ""; 
-     } 
-     if(isset($_POST['direccion']) && $_POST['direccion'] != "") 
-     { 
-         $direccion_sent = $_POST['direccion']; 
-     }elseif(!isset($_POST['direccion'])){ 
-         $direccion_sent = ""; 
-     } 
-     if(isset($_POST['hijos']) && $_POST['hijos'] != "") 
-     { 
-         $hijos_sent = $_POST['hijos']; 
-     }elseif(!isset($_POST['hijos'])){ 
-         $hijos_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo1']) && $_POST['nombre_hijo1'] != "") 
-     { 
-         $nombre_hijo1_sent = $_POST['nombre_hijo1']; 
-     }elseif(!isset($_POST['nombre_hijo1'])){ 
-         $nombre_hijo1_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo1']) && $_POST['fecha_nombre_hijo1'] != "") 
-     { 
-         $fecha_nombre_hijo1_sent = $_POST['fecha_nombre_hijo1']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo1'])){ 
-         $fecha_nombre_hijo1_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo2']) && $_POST['nombre_hijo2'] != "") 
-     { 
-         $nombre_hijo2_sent = $_POST['nombre_hijo2']; 
-     }elseif(!isset($_POST['nombre_hijo2'])){ 
-         $nombre_hijo2_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo2']) && $_POST['fecha_nombre_hijo2'] != "") 
-     { 
-         $fecha_nombre_hijo2_sent = $_POST['fecha_nombre_hijo2']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo2'])){ 
-         $fecha_nombre_hijo2_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo3']) && $_POST['nombre_hijo3'] != "") 
-     { 
-         $nombre_hijo3_sent = $_POST['nombre_hijo3']; 
-     }elseif(!isset($_POST['nombre_hijo3'])){ 
-         $nombre_hijo3_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo3']) && $_POST['fecha_nombre_hijo3'] != "") 
-     { 
-         $fecha_nombre_hijo3_sent = $_POST['fecha_nombre_hijo3']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo3'])){ 
-         $fecha_nombre_hijo3_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo4']) && $_POST['nombre_hijo4'] != "") 
-     { 
-         $nombre_hijo4_sent = $_POST['nombre_hijo4']; 
-     }elseif(!isset($_POST['nombre_hijo4'])){ 
-         $nombre_hijo4_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo4']) && $_POST['fecha_nombre_hijo4'] != "") 
-     { 
-         $fecha_nombre_hijo4_sent = $_POST['fecha_nombre_hijo4']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo4'])){ 
-         $fecha_nombre_hijo4_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo5']) && $_POST['nombre_hijo5'] != "") 
-     { 
-         $nombre_hijo5_sent = $_POST['nombre_hijo5']; 
-     }elseif(!isset($_POST['nombre_hijo5'])){ 
-         $nombre_hijo5_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo5']) && $_POST['fecha_nombre_hijo5'] != "") 
-     { 
-         $fecha_nombre_hijo5_sent = $_POST['fecha_nombre_hijo5']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo5'])){ 
-         $fecha_nombre_hijo5_sent = ""; 
-     } 
-      
-     header("Location: solicitar_usuario.php?con todas las variables definidas"); 
- } 
-   
- if(isset($_POST['ubicacion']) && $_POST['ubicacion'] == "") 
- { 
-         if(isset($_POST['codigo_humano']) && $_POST['codigo_humano'] != "") 
-     { 
-         $codigo_humano_sent = $_POST['codigo_humano']; 
-     }elseif(!isset($_POST['codigo_humano'])){ 
-         $codigo_humano_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nac']) && $_POST['fecha_nac'] != "") 
-     { 
-         $fecha_nac_sent = $_POST['fecha_nac']; 
-     }elseif(!isset($_POST['fecha_nac'])){ 
-         $fecha_nac_sent = ""; 
-     } 
-     if(isset($_POST['telefono']) && $_POST['telefono'] != "") 
-     { 
-         $telefono_sent = $_POST['telefono']; 
-     }elseif(!isset($_POST['telefono'])){ 
-         $telefono_sent = ""; 
-     } 
-     if(isset($_POST['email']) && $_POST['email'] != "") 
-     { 
-         $email_sent = $_POST['email']; 
-     }elseif(!isset($_POST['email'])){ 
-         $email_sent = ""; 
-     } 
-     if(isset($_POST['ubicacion']) && $_POST['ubicacion'] != "") 
-     { 
-         $ubicacion_sent = $_POST['ubicacion']; 
-     }elseif(!isset($_POST['ubicacion'])){ 
-         $ubicacion_sent = ""; 
-     } 
- #    
-     if(isset($_POST['telefono2']) && $_POST['telefono2'] != "") 
-     { 
-         $telefono2_sent = $_POST['telefono2']; 
-     }elseif(!isset($_POST['telefono2'])){ 
-         $telefono2_sent = ""; 
-     } 
-     if(isset($_POST['direccion']) && $_POST['direccion'] != "") 
-     { 
-         $direccion_sent = $_POST['direccion']; 
-     }elseif(!isset($_POST['direccion'])){ 
-         $direccion_sent = ""; 
-     } 
-     if(isset($_POST['hijos']) && $_POST['hijos'] != "") 
-     { 
-         $hijos_sent = $_POST['hijos']; 
-     }elseif(!isset($_POST['hijos'])){ 
-         $hijos_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo1']) && $_POST['nombre_hijo1'] != "") 
-     { 
-         $nombre_hijo1_sent = $_POST['nombre_hijo1']; 
-     }elseif(!isset($_POST['nombre_hijo1'])){ 
-         $nombre_hijo1_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo1']) && $_POST['fecha_nombre_hijo1'] != "") 
-     { 
-         $fecha_nombre_hijo1_sent = $_POST['fecha_nombre_hijo1']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo1'])){ 
-         $fecha_nombre_hijo1_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo2']) && $_POST['nombre_hijo2'] != "") 
-     { 
-         $nombre_hijo2_sent = $_POST['nombre_hijo2']; 
-     }elseif(!isset($_POST['nombre_hijo2'])){ 
-         $nombre_hijo2_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo2']) && $_POST['fecha_nombre_hijo2'] != "") 
-     { 
-         $fecha_nombre_hijo2_sent = $_POST['fecha_nombre_hijo2']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo2'])){ 
-         $fecha_nombre_hijo2_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo3']) && $_POST['nombre_hijo3'] != "") 
-     { 
-         $nombre_hijo3_sent = $_POST['nombre_hijo3']; 
-     }elseif(!isset($_POST['nombre_hijo3'])){ 
-         $nombre_hijo3_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo3']) && $_POST['fecha_nombre_hijo3'] != "") 
-     { 
-         $fecha_nombre_hijo3_sent = $_POST['fecha_nombre_hijo3']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo3'])){ 
-         $fecha_nombre_hijo3_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo4']) && $_POST['nombre_hijo4'] != "") 
-     { 
-         $nombre_hijo4_sent = $_POST['nombre_hijo4']; 
-     }elseif(!isset($_POST['nombre_hijo4'])){ 
-         $nombre_hijo4_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo4']) && $_POST['fecha_nombre_hijo4'] != "") 
-     { 
-         $fecha_nombre_hijo4_sent = $_POST['fecha_nombre_hijo4']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo4'])){ 
-         $fecha_nombre_hijo4_sent = ""; 
-     } 
-     if(isset($_POST['nombre_hijo5']) && $_POST['nombre_hijo5'] != "") 
-     { 
-         $nombre_hijo5_sent = $_POST['nombre_hijo5']; 
-     }elseif(!isset($_POST['nombre_hijo5'])){ 
-         $nombre_hijo5_sent = ""; 
-     } 
-     if(isset($_POST['fecha_nombre_hijo5']) && $_POST['fecha_nombre_hijo5'] != "") 
-     { 
-         $fecha_nombre_hijo5_sent = $_POST['fecha_nombre_hijo5']; 
-     }elseif(!isset($_POST['fecha_nombre_hijo5'])){ 
-         $fecha_nombre_hijo5_sent = ""; 
-     } 
-      
-     header("Location: solicitar_usuario.php?con todas las variables definidas"); 
- } 
Este es para direccionar, luego vuelvo a definir las variables para insertar    
Código PHP:
Ver original- #igualo variables para inserción 
- $nombre = $_POST['nombre']; 
- $cedula = $_POST['cedula']; 
- #valido los campos opcionales 
- if(isset($_POST['telefono2']) && $_POST['telefono2'] != ""){ $telefono2 = $_POST['telefono2'];}elseif(!isset($_POST['telefono2'])){ $telefono2 = "sin datos";} 
-   
- #.....(son muchos :( no pongo todos ) 
Y por último hago la inserción:    
Código PHP:
Ver original-         $sql = " 
-         INSERT INTO `helponline`.`solicitud_usuario` ( 
-             `id_solicitud` , 
-             `password` , 
-             `usuario` , 
-             `y todo lo demás!'  
-             ) 
-             VALUES (NULL , '$codigo_humano', '$usuario', 'y todo lo demás!')"; 
-          
-          
-         header("Location: insertar_solicitud.php?registro=ok"); 
Luego arriba tengo una condicion que si existe $_GET registro = ok me muestra un html, en esa parte funciona bien. 
No tengo idea de que estoy haciendo mal, porque al existir un campo vacío me tira de nuevo a solicitud_usuario com las variables perfectas. pero igual me inserta en la DB 
 
  
 
Talvez alguien me pueda ayudar! 
 
 
saludos 
PD: recorte el código por problemas de límites de letras del foro.