Bueno, entrando en tema, tengo dos bd donde almaceno una serie de datos y en un determinado momento quiero recoger algunos datos de la tabla1 y otros datos de la tabla 2 y con ellos crear registros en la tabla 3. Pero quiero que por cada consulta a tabla 1 y 2 se genere un único registro en la tabla 3.
Inicialmente realize dos consultas, una para tabla1 y otra para tabla 2 pero en la tabla 3 se me generaban 2 registros en vez de uno. Para esto estoy utilizando php.
un ejemplo del código que utilizo es:
Código HTML:
$idcnx = conectar (); $sql = "SELECT * FROM tabla1 WHERE id='".$_POST['id']."'"; $res = mysql_query($sql) or die (mysql_error()); if (mysql_num_rows($res)>0){ while ($fila = mysql_fetch_array($res)) { mysql_query("insert into tabla3(nombre)values('".$fila['nombreobjofre']."')"); mysql_close($idcnx); } } $idcnx2 = conectar (); mysql_query("SET NAMES 'utf8'"); // realizo la consulta. $sql2 = "SELECT * FROM tabla2 WHERE propietario='$quienofrece'"; $res2 = mysql_query($sql2) or die (mysql_error()); if (mysql_num_rows($res2)>0){ while ($fila2 = mysql_fetch_array($res2)) { mysql_query("insert into intercambios(apeliidos)values('".$fila2['apellidos']."')"); mysql_close($idcnx); } }
Gracias