El problema reside en que al hacer la inserción en la tabla de empleados no me la hace, aqui está el código:
Código PHP:
$sql1=mysql_query("insert into inventario.personas (nombre, ap_pat,ap_mat,calle_num,colonia,ciudad,telefono,celular,email) values ('".$_SESSION['nom']."','".$_SESSION['app']."','".$_SESSION['apm']."','".$_SESSION['calle']."','".$_SESSION['col']."','".$_SESSION['cd']."','".$_SESSION['tel1']."','".$_SESSION['tel2']."','".$_SESSION['mail']."');");
//inserta en login
$sql2=mysql_query("insert into login(username,password) values ('".$_SESSION['user']."',MD5('".$_SESSION['contra']."'))");
//inserta en empleados
$sql3=mysql_query("INSERT INTO empleados(id_persona,id_login,id_puestos) SELECT personas.id_persona, login.id_login, puestos.id_puestos FROM personas, login, puestos WHERE personas.nombre = '".$_POST['nombre']."' AND personas.ap_pat = '".$_POST['ap_pat']."' and personas.ap_mat='".$_POST['ap_mat']."' and login.username='".$_POST['username']."' and puestos.id_puestos='".$_POST['puestos']."'");
//inserta el RFC
$sql4=mysql_query("update vistaempleados set RFC='".$_SESSION['rfc']."' where nombre='".$_SESSION['nom']."' and ap_pat='".$_SESSION['app']=$_POST['ap_pat']."'and ap_mat='".$_SESSION['apm']."';");
//lo da de alta en el sistema
$sql5=mysql_query("update vistausuarios set status=1 where username='".$_POST['username']."'");
gracias por su ayuda.