Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/10/2004, 20:37
yoe
 
Fecha de Ingreso: marzo-2003
Mensajes: 74
Antigüedad: 21 años, 1 mes
Puntos: 0
Insertar registros en tablas relacionadas a partir de un formulario

Estoy intentando insertar registros en tablas relacionadas a partir de un mismo formulario y me da el siguiente error:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ....... línea 22

Parece ser que no estoy utilizando la función adecuada para leer los resultados de la query.

Lo que hago es lo siguiente:

include('includes/functions/database.php');

//Insertamos en la tabla pages (tabla madre)

$sql = 'INSERT INTO `pages` ( `page_id` , `page_categorie_id` , `page_author_id` , `page_title` , `page_adicional_title` , `page_description` , `page_active` , `page_header` , `page_text` , `page_footer` , `page_signature` , `page_date` , `page_counter` , `page_clanguage` ) '
. ' VALUES ( \'\', \''.$page_categorie_id.'\', \''.$page_author_id.'\', \''.$page_title.'\', \''.$page_adicional_title.'\', \''.$page_description.'\', \''.$page_active.'\', NULL , NULL , NULL , NULL , \'0000-00-00 00:00:00\', \'0\', \'0\' );'
. ' ';
$result = mysql_query($sql) or die("Insert Query Falla");


//Seleccionamos el id de la madre
$sql = 'SELECT max(page_id) as page_id'
. ' FROM pages'
. ' WHERE ( ( ( pages.page_categorie_id ) ='.$page_categorie_id.' ) AND ( ( pages.page_author_id ) ='.$page_author_id.' ) AND ( ( pages.page_title ) = \''.$page_title.'\' ) ) LIMIT 0, 30';
echo $sql."<br>";
$result = mysql_db_query("basededatos",$sql) or die (mysql_error());

//Insertamos en pages_content (tabla hija).
while ($row_content = mysql_fetch_array($result))
{
$sql = 'INSERT INTO `pages_contents` ( `content_id` , `content_page_id` , `content_page_titlei` , `content_page_text` , `content_page_image` ) '
. ' VALUES ( \'\', \''.$row_content['page_id'].'\', \''.$content_page_titlei.'\', \''.$content_page_texti.'\', \''.$content_page_imagei.'\' );'
. ' ';
$result = mysql_db_query("basededatos",$sql);
}

No entiendo donde puede estar el error. He realizado otros ejemplos, pero para insertar en una unica tabla y funciona perfectamente la función mysql_fetch_array.

Por otro lado, ¿existe otra forma mas simple de insertar registros de tablas relacionadas en php?

Saludos y muchas gracias