Foros del Web » Programando para Internet » PHP »

Insertar clave primaria en otra tabla

Estas en el tema de Insertar clave primaria en otra tabla en el foro de PHP en Foros del Web. Estoy intentando introducir la clave primaria de una tabla en otra como clave foránea. La pk(customers_id) es numérica y autoincrementable. Para ello, primero, selecciono la ...
  #1 (permalink)  
Antiguo 15/08/2004, 10:20
yoe
 
Fecha de Ingreso: marzo-2003
Mensajes: 74
Antigüedad: 14 años, 8 meses
Puntos: 0
Insertar clave primaria en otra tabla

Estoy intentando introducir la clave primaria de una tabla en otra como clave foránea.

La pk(customers_id) es numérica y autoincrementable.

Para ello, primero, selecciono la pk a través del e-mail(es un campo único) y después la inserto en la otra tabla.

No sé donde esta el error, pero siempre introduce el valor cero.

//Selecciono la PK

$customerid="SELECT customers_id FROM customers p WHERE p.customers_email_address = '$customers_email_address'";
$idcontacto=mysql_query("$customerid") or die("Query Falla");

//Inserto la PK en la otra tabla

$sql = 'INSERT INTO `customers_mensajes` ( `newsletters_id` , `title` , `content` , `module` , `date_added` , `date_sent` , `status` , `locked` , `para` , `customers_id` ) '
. ' VALUES ( \'\', \''.$title\.'\', \''.$content.'\', \'\', \'0000-00-00 00:00:00\', NULL , NULL , \'0\', \'\', \''.$idcontacto.'\' );'
. ' ';

$result = mysql_query($sql) or die("Insert Query Falla");


Lo que intento es mantener la trazabilizad entre una tabla de contactos y otra con las características del mensaje/s enviados por los mismos.

Para ello, una vez insertado el registro del contacto(si no existe), hay que insertar en la otra tabla los atributos del mensaje.

Supongo que tiene que haber otras formas mas simples de hacer esto en php.

Gracias,
  #2 (permalink)  
Antiguo 15/08/2004, 12:20
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

mysql_query() ejecuta la consulta, pero no devuelve el contenido de los campos. Debes leer el contenido con mysql_fetch_array() o semejantes (en este caso incluso mejor con mysql_result()).

saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:25.