Ver Mensaje Individual
  #5 (permalink)  
Antiguo 17/10/2004, 21:02
Avatar de jpinedo
jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Cita:
Iniciado por yoe
El problema estaba en el bucle while.

Si lo elimino y utilizo directamente la expresión $row_content = mysql_fetch_array($result)); , funciona correctamente.

No entiendo muy bien a qué se debe, pues aunque solamente tenga un registro el array debería funcionar el bucle.
yoe:
Lo que está pasando es que estás generando un conflicto con el nombre de la variable $result. Si te das cuenta el while utiliza esa variable, y tú la modificas dentro (cosa que no debería pasar).... además, almacenar el resultado en una variable sólo tiene utilidad en consultas como SELECT... en un INSERT no hace falta.
O sea que no es necesario redefinir esa variable.
Código PHP:
$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.'\' );'
' '
//Acá haces el query sin almacenarlo en ninguna variable.
mysql_db_query("basededatos",$sql);

Ahora... si tuvieras el caso en que no hay INSERT, sino SELECT y necesitas almacenar ese valor del resultado.... simplemente le cambias de nombre a alguna de las variables para que no entren en conflicto.

Saludos