lunes, 4 de octubre de 2010

Modificar dos tablas en MYSQL con PHP

He estado realizando un proyecto en php con mysql y he aprendido algunas cosas que quiero compartir, de hoy en adelante iré poniendo código con respecto a diferentes temas, quien quiera una explicación más detallada solo debe escribirme (jonathan.pantagora@gmail.com) exponiendo que parte del código no entiende.

En este primer código voy a mostrar como modificar datos en dos tablas. por ejemplo: supongamos que tenemos una tabla "empleado" con los datos de los mismos y una tabla "entregasdiarias" donde se registra el material que se el entrega a cada uno.

Ahora supongamos que necesitamos cambiar el número telefónico, el nombre, el cargo o cualquier otro dato. Pues bien vamos a ver como realizar cambios en la tabla empleados y que esos cambios se reflejen en la tabla "entregasdiarias". Cabe destacar que las tablas poseen un campo en común llamado "cedula".

Este es el código:


<?php
require_once("conexion.php"); //llama el archivo de conexión a la base de datos

//modifica la tabla empleados
$sql="UPDATE empleado
SET
nombre='".$_POST["nombre"]."',
apellido1='".$_POST["apellido1"]."',
apellido2='".$_POST["apellido2"]."',
fechaingreso='".$_POST["fechaingreso"]."'
WHERE
cedula=".$_POST["cedula"]."";

$res=mysql_query($sql,$con);

#Modifica el nombre en la tabla entregas diarias con los datos de la tabla empleado

$sql="
UPDATE entregasdiarias
SET
nombre = (
  SELECT nombre FROM empleado
  WHERE empleado.cedula=entregasdiarias.cedula
)
WHERE
cedula=".$_POST["cedula"]."
";

$res=mysql_query($sql,$con);

#Modifica el apellido 1 en la tabla entregas diarias con los datos de la tabla empleado

$sql="
UPDATE entregasdiarias
SET
apellido1 = (
  SELECT apellido1 FROM empleado
  WHERE empleado.cedula=entregasdiarias.cedula
)
WHERE
cedula=".$_POST["cedula"]."
";

$res=mysql_query($sql,$con);

#Modifica el apellido 2 en la tabla  entregas diarias con los datos de la tabla emplead

$sql="
UPDATE entregasdiarias
SET
apellido2 = (
  SELECT apellido2 FROM empleado
  WHERE empleado.cedula=entregasdiarias.cedula
)
WHERE
cedula=".$_POST["cedula"]."
";

$res=mysql_query($sql,$con);

echo "<script type=''>
alert('Los datos del empleado fueron modificados correctamente');
window.location='empleados.php';
</script>";
?>


0 comentarios:

Publicar un comentario