| |||
Insercion de datos a tablas ligadas Tengo un formulario para empleados que estoy manejando la escolaridad, los datos generales (Sexo, Edad y Estado Civil), la Direccion y el puesto en tablas distintas al del empleado y quiero saber si existe algun modo de insertar y ligar toda esa informacion en un solo click de submit. |
| |||
Respuesta: Insercion de datos a tablas ligadas El siguiente codigo es el que tengo y quiero mejorar. $Id_empleado = $_REQUEST['Id_empleado']; //echo "Id de Empleado: ".$Id_empleado."<br/><br/>"; IF(empty($Id_empleado) AND empty($vMES) AND empty($vTRIO) AND empty($vANIO) AND empty($vNombre) AND empty($vAPPA) AND empty($vAPMA) AND empty($vSEXO) AND empty($vEDAD) AND empty($vEDOCIV) AND empty($vCURP) AND empty($vRFC) AND empty($vTITULO) AND empty($vINSTITUCION) AND empty($vDESCESC) AND empty($vIMSS) AND empty($vINFONAVIT) AND empty($vCALLE) AND empty($vCOLONIA) AND empty($vDELMUN) AND empty($vEDO) AND empty($vSUELDO) AND empty($vJOB) AND empty($vINICIO)) { $Id_empleado = $_REQUEST['Id_empleado']; $vNombre = $_REQUEST['vNombre']; $vAPPA = $_REQUEST['vAPPA']; $vAPMA = $_REQUEST['vAPMA']; $vSEXO = $_REQUEST['vSEXO']; $vEDAD = $_REQUEST['vEDAD']; $vEDOCIV = $_REQUEST['vEDOCIV']; $vCURP = $_REQUEST['vCURP']; $vRFC = $_REQUEST['vRFC']; $vTITULO = $_REQUEST['vTITULO']; $vINSTITUCION = $_REQUEST['vINSTITUCION']; $vDESCESC = $_REQUEST['vDESCESC']; $vIMSS = $_REQUEST['vIMSS']; $vINFONAVIT = $_REQUEST['vINFONAVIT']; $vCALLE = $_REQUEST['vCALLE']; $vCOLONIA = $_REQUEST['vCOLONIA']; $vDELMUN = $_REQUEST['vDELMUN']; $vEDO = $_REQUEST['vEDO']; $vSUELDO = $_REQUEST['vSUELDO']; $vJOB = $_REQUEST['vJOB']; $vINICIO = $_REQUEST['vINICIO']; $vMES = $_REQUEST['vMES']; $vTRIO = $_REQUEST['vTRIO']; $vANIO = $_REQUEST['vANIO']; $vTELEFONO = $_REQUEST['vTELEFONO']; $vUDN = $_REQUEST['vUDN']; $string = $Id_empleado."_".$vNombre."_".$vAPPA."_".$vAPMA."_ ".$vSEXO."_".$vEDAD."_".$vEDOCIV."_".$vCURP."_".$v RFC."_".$vTITULO."_".$vINSTITUCION."_".$vDESCESC." _".$vIMSS."_".$vINFONAVIT."_".$vCALLE."_".$vCOLONI A."_".$vDELMUN."_".$vEDO."_".$vSUELDO."_".$vJOB."_ ".$vINICIO."_".$vMES."_".$vTRIO."_".$vANIO."_".$vT ELEFONO."_".$vCONCEPTO."_".$vCANTIDAD."_".$vFPAGO. "_".$vUDN; $Datos = explode("_",$string); //echo "Cadena de Datos: "; //var_dump($Datos); IF(isset($_REQUEST['INSERTAR'])) { $Datos[0] = @mysql_insert_id(); include "procEMPLEADOS.php"; $sql = "INSERT INTO contra_empleados VALUES ($Datos[0], '$Datos[1]', '$Datos[2]', '$Datos[3]', $grals[0], $escuela[0], $direccion[0],$JOB[0], '$Datos[24]', '$Datos[7]','$Datos[8]', '$Datos[12]', '$Datos[13]', '$Datos[20]', '$Datos[21]', '$Datos[22]', '$Datos[23]','$Datos[18]')"; $Ins = mysql_query($sql); ECHO "<br/><br/> QUERY INSERT GENERAL: ".$sql."<br/><BR/>"; var_dump($Ins); ECHO "<br/><br/>"; //ECHO "<meta http-equiv=refresh content=\"0; URL=abcEmpleado.php?Id_empleado=$Id_empleado\">"; IF(!$Ins) { //echo @mysql_errno($result); die('Invalid query(12): ' . @mysql_error()); }//Validacion de Insercion total }//Inserta //ECHO $Datos[0]; } |
| |||
Respuesta: Insercion de datos a tablas ligadas Claro que existe solo haz dos insert despues de insertar en la principal obtienes el ultimo id o jalas tu fk e insertas en la segunda, solo ten cuidado con cosas de commit y rollback, mas tarde te paso codigo de como se puede hacer saludos. |
| |||
Respuesta: Insercion de datos a tablas ligadas Agradecido estoy, espero el codigo. |
| |||
Respuesta: Insercion de datos a tablas ligadas Se me estaba olvidando que tengo mas codigo en un archivo externo. Es el siguiente: <?php ECHO "<H1>AQUI INICIA procEmpleados.php</H1>"; //ESCOLARIDAD $ESC = "SELECT Id_escolaridad FROM contra_escolaridad WHERE Titulo_carrera = '$Datos[9]' AND Institucion = '$Datos[10]' AND Descripcion = '$Datos[11]'"; $ESCOLAR = mysql_query($ESC); $escuela = mysql_fetch_row($ESCOLAR); //echo "<br/>QUERY SELECT ESCUELA: <br/>"; //echo $ESC."<br/>"; //ECHO "DATOS ESCUELA, VACIO? <br/>"; //var_dump($ESCOLAR); //echo "<br/>"; //var_dump($escuela); IF(!$ESCOLAR) { //echo @mysql_errno($result); DIE('Invalid query(0): ' . @mysql_error()); }//Validacion Inesrt Job IF(!empty($escuela)) { $upsEsc = "UPDATE contra_escolaridad SET Titulo_carrera = '$Datos[9]', Institucion = '$Datos[10]', Descripcion ='$Datos[11]' WHERE Id_escolaridad = $escuela[0]"; $EscolarUps = mysql_query($upsEsc); //echo "<br/><br/>QUERY UPDATE ESCOLARIDAD: ".$upsEsc; //echo "<br/><br/>DATOS ESCOLARIDAD, ACTUALIZO? "; //var_dump($EscolarUps); IF(!$EscolarUps) { //echo @mysql_errno($result); die('Invalid query(1): ' . mysql_error()); } } else { $id = mysql_insert_id(); $insEsc = "INSERT INTO contra_escolaridad VALUES ($id,'$Datos[9]', '$Datos[10]', '$Datos[11]')"; $EscolarIns = mysql_query($insEsc); //echo "<br/><br/>QUERY INSERT ESCOLARIDAD: ".$insEsc; //echo "<br/><br/>DATOS ESCOLARIDAD, INSERTO? "; //var_dump($EscolarIns); IF(!$EscolarIns) { //echo @mysql_errno($result); die('Invalid query(2): ' . mysql_error()); } } //ESCOLARIDAD //DIRECCION $die = "SELECT Id_direccion FROM contra_direccion WHERE calle = '$Datos[14]' AND colonia = '$Datos[15]' AND del_mun = '$Datos[16]' AND estado = '$Datos[17]'"; $DIR = @mysql_query($die); $direccion = @mysql_fetch_row($DIR); echo "<br/>QUERY SELECT DIRECCION: ".$die; echo "<br/>DATOS DIRECCION, VACIOS? "; var_dump($direccion); IF(!$DIR) { //echo @mysql_errno($result); DIE('Invalid query(3): ' . @mysql_error()); }//Validacion Inesrt Job IF(empty($direccion)) { $id = mysql_insert_id(); $dirIns = "INSERT INTO contra_direccion VALUES ($id,'$Datos[14]', '$Datos[15]', '$Datos[16]', '$Datos[17]')"; $InsDir = mysql_query($dirIns); echo "<br/>QUERY INSERT DIRECCION: ".$dirIns; echo "<br/>DATOS DIRECCION, INSERTO? "; var_dump($InsDir); IF(!$InsDir) { //echo @mysql_errno($result); die('Invalid query(4): ' . mysql_error()); } } else { $upsDir = "UPDATE contra_direccion SET Calle = '$Datos[14]', Colonia = '$Datos[15]', del_mun = '$Datos[16]', estado = '$Datos[17]'"; $upsDir .= " WHERE Id_direccion = $direccion[0]"; $DirUps = mysql_query($upsDir); echo "<br/>QUERY UPDATE DIRECCION: ".$upsDir; echo "<br/>DATOS DIRECCION, ACTUALIZO? "; var_dump($DirUps); IF(!$DirUps) { //echo @mysql_errno($result); die('Invalid query(5): ' . mysql_error()); } } //DIRECCION //PERFIL $pesto = "SELECT Id_puesto FROM contra_perfil WHERE nombre = '$Datos[19]' "; $HOB = @mysql_query($pesto); $JOB = @mysql_fetch_row($HOB); //echo "<br/><br/>QUERY SELECT PERFIL: ".$pesto; //echo "<br/><br/>DATOS PERFIL, VACIO? "; //var_dump($JOB); IF(!$HOB) { //echo @mysql_errno($result); DIE('Invalid query(6): ' . @mysql_error()); }//Validacion Inesrt Job IF(empty($JOB)) { $id = mysql_insert_id(); $Job = "INSERT INTO contra_perfil (Id_puesto, Nombre) VALUES ($id, '$Datos[19]')"; $InsJob = @mysql_query($Job); //echo "<br/>QUERY INSERT PERFIL: ".$Job; //echo "<br/>DATOS PERFIL, INSERTO? "; //var_dump($InsJob); IF(!$InsJob) { //echo @mysql_errno($result); DIE('Invalid query(7): ' . @mysql_error()); }//Validacion Inesrt Job }//Insercion puesto ELSEIF(IS_NULL($InsJob)) { $upsJob = "UPDATE contra_perfil SET nombre = '$Datos[19]' WHERE Id_puesto = $JOB[0]"; $JobUps = mysql_query($upsJob); //echo "<br/>QUERY UPDATE PERFIL: ".$upsJob; //echo "<br/>DATOS PERFIL, ACTUALIZO? "; //var_dump($JobUps); IF(!$JobUps) { //echo @mysql_errno($result); die('Invalid query(8): ' . mysql_error()); } }//Actualizacion JOB //PERFIL //GENERAL $grass = "SELECT Id_general FROM contra_desc_general WHERE Sexo = '$Datos[4]' AND Edad = '$Datos[5]' AND Estado_civil = '$Datos[6]'"; $grale = @mysql_query($grass); $grals = @mysql_fetch_row($grale); //echo "<br/>QUERY SELECT GENERAL: ".$grass; //echo "<br/>DATOS GENERAL, VACIO? "; //var_dump($grale); //echo "<br/>"; //var_dump($grals); IF(!$grale) { //echo @mysql_errno($result); DIE('Invalid query(9): ' . @mysql_error()); }//Validacion Inesrt Job IF(empty($grals)) { $id = @mysql_insert_id(); $gralIns = "INSERT INTO contra_desc_general VALUES ($id,'$Datos[4]', '$Datos[5]', '$Datos[6]')"; $InsGral = @mysql_query($gralIns); //echo "<br/>QUERY INSERT GENERAL: ".$gralIns; //echo "<br/>DATOS GENERAL, INSERTO? "; //var_dump($InsGral); IF(!$InsGral) { //echo @mysql_errno($result); die('Invalid query(10): ' . @mysql_error()); } } ELSE { $gralUps = "UPDATE contra_desc_general SET Sexo = '$Datos[4]', Edad = '$Datos[5]', Estado_civil = '$Datos[6]' WHERE id_general = $grals[0]"; $UpsGral = @mysql_query($gralUps); //echo "<br/>QUERY UPDATE GENERAL:".$gralUps; //echo "<br/>DATOS GENERAL, ACTUALIZO? "; //var_dump($UpsGral); IF(!$UpsGral) { //echo @mysql_errno($result); die('Invalid query(11): ' . @mysql_error()); } } //GENERAL ?> |
Etiquetas: |