Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] insertar campos en tres tablas diferentes php mysql

Estas en el tema de insertar campos en tres tablas diferentes php mysql en el foro de PHP en Foros del Web. Hola, Tengo un formulario en php que contiene los datos de un individuo con su domicilio, en la base de datos tengo 3 tablas que ...
  #1 (permalink)  
Antiguo 29/08/2018, 14:36
 
Fecha de Ingreso: noviembre-2015
Mensajes: 49
Antigüedad: 2 años, 11 meses
Puntos: 2
insertar campos en tres tablas diferentes php mysql

Hola,

Tengo un formulario en php que contiene los datos de un individuo con su domicilio, en la base de datos tengo 3 tablas que se supone que tienen que recibir la información de los cambios a través de los input de php. La idea es que no se grabe todo el formulario en una sola tabla ni todos los campos, SOLAMENTE LOS QUE CAMBIARON; es decir, si solo se modifica el número exterior del domicilio, ese cambio deberá entrar en una tabla llamada cambio, pero el id_individuo en otra llamada campaña y la fecha en otra llamada vuelta. Así por cada cambio de algún input, si dos input cambiaron, en la tabla cambio deberán entrar solo los dos campos que cambiaron.
este es el código que estoy utilizando, pero no sirve de nada:
Código PHP:
if(isset(guardar)){

$apellido_paterno $_POST["apellido_paterno"];
            
$apellido_materno =  $_POST["apellido_materno"];
            
$nombre_1 $_POST["nombre_1"];
            
$nombre_2 =  $_POST["nombre_2"];

$calle =$_POST["calle"];
            
$numero_exterior =$_POST["numero_exterior"];
            
$numero_interior =$_POST["numero_interior"];
            
$codigo_postal =$_POST["codigo_postal"];
            
$estado =$_POST["estado"];
            
$municipio =$_POST["municipio"];
            
$ciudad =$_POST["ciudad"];
            
$colonia =$_POST["colonia"];
            
$fecha $_POST['fecha'];
            
$nom_campaña $_POST['nom_campaña'];
            
$tipificacion $_POST['tipificacion'];

INSERT INTO cambio ccampaña kvuelta v (entidadnom_campañafecha values ([$campo_que_cambio o $campos_que_cambiaron], '$nom_campaña''$tipificacion' );

La cosa es que no hace nada de lo que necesito y además, no apunta al campo que ha cambiado, lo que yo necesito es que si el nombre es el único campo que cambió, sólo el nombre se guarde en la tabla cambio en el campo entidad; si el nombre y la calle cambiaron, sólo se guarden el nombre y la calle en el campo entidad sin importar que se guarde uno abajo del otro. Pero, al mismo tiempo debe guardar en las otras dos tablas que son campaña y vuelta.

Saludos
__________________
paco alonso
  #2 (permalink)  
Antiguo 29/08/2018, 16:59
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.959
Antigüedad: 5 años, 3 meses
Puntos: 372
Respuesta: insertar campos en tres tablas diferentes php mysql

Creo que la operación que buscas es UPDATE no INSERT revisa el manual de tu gestor de base de datos para mas detalles
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 30/08/2018, 08:27
 
Fecha de Ingreso: noviembre-2015
Mensajes: 49
Antigüedad: 2 años, 11 meses
Puntos: 2
Respuesta: insertar campos en tres tablas diferentes php mysql

Cita:
Iniciado por hhs Ver Mensaje
Creo que la operación que buscas es UPDATE no INSERT revisa el manual de tu gestor de base de datos para mas detalles
Hola, gracias por tu respuesta pero no es así; como voy a guardar en tablas diferentes a la tabla de la que obtiene los datos entonces no existen los registros en las otras tres tablas y no se podrían actualizar con update, por eso tiene que ser insert into. La cosa es que lo complicado viene cuando no necesito guardar todos los campos en la tabla cambio sino qué, si el input nombre se modificó, entonces solo guardaré en la tabla el input nombre en el campo entidad, en la tabla campaña guardaré solo el nombre de la campaña y en la tabla vuelta la fecha. Lo anterior no viene de la misma tabla individuo, viene de dos tablas una llamada medico y la otra llamada domicilio, pero JAMÁS se deben actualizar estas dos tablas, para eso son las otras tres. Adicional: si cambian dos campos, es decir; apellido y calle o número exterior, solo esos dos campos se deben grabar en la tabla cambio.

Espero con esto se entienda un poco más mi planteamiento.
Saludos.
__________________
paco alonso
  #4 (permalink)  
Antiguo 18/09/2018, 12:20
 
Fecha de Ingreso: noviembre-2015
Mensajes: 49
Antigüedad: 2 años, 11 meses
Puntos: 2
Respuesta: insertar campos en tres tablas diferentes php mysql

Hola a todos, ya resolví el problema, de hecho es probable que sea poco elegante pero lo que hice fue un insert into por cada input.
__________________
paco alonso



La zona horaria es GMT -6. Ahora son las 01:04.