Ver Mensaje Individual
  #10 (permalink)  
Antiguo 11/09/2008, 14:31
Avatar de ElJavista
ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 12 años, 10 meses
Puntos: 67
Respuesta: Pasar variables de 2 formulario a una tabla de una base de datos

Ok, ya entiendo porque le llamas intermedia y ya entiendo porque te salen duplicados los datos (eso creo).

Bueno te daré una sugerencia y la solución a tu problema. Primero la sugerencia. No entiendo porque tienen que haber 3 tablas, si podrían haber solo dos. Talvez pretendas con eso relacionar al Candidato con los estudios, pero eso no se hace así, basta con que añadas a la tabla "Estudio" el id del cantidato. Ok, es solo una sugerencia, a lo mejor hay una buena razón para hacerlo.

Ok, ahora la solución, tengo que suponer (porque no lo has explicado) que al enviarse cada formulario se carga la información en dos tablas, en el primer envío se carga en la tabla Candidatos y en Estudio-Candidato, y en segundo envío se carga en Estudio y Estudio-Candidato. Estoy en lo cierto? es por eso que en esta tabla intermedia aparecen dos flas cuando tú quieres que sólo aparesca una sola. OK, si he supuesto bien, entonces te daré la solución:

Esta tabla intermedia debe tener un id, digamos simplemente "id" (puedes ponerle el nombre que te de la gana obviamente). En el primer envío de datos guardas los datos correspondientes a esta tabla con un INSERT, pero debes obtener su id mediante esta función:

mysql_insert_id();

Eso te dará el id del último registro insertado, ok, "guardas" ese id en un input hidden, en el segundo envío tomas ese id y ya no haces un INSERT sino un UPDATE con la condición de que el id de esa tabla sea el valor de input hidden. De este modo:

$id = $_POST["idi"]; // input hidden
$sql = "Update Estudio-Candidato set ....... where id = $id";

Eso hará que quede todo en un mismo registro. Espero que sea lo que buscabas.