Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/03/2007, 07:10
oskar_calvo
 
Fecha de Ingreso: agosto-2006
Mensajes: 219
Antigüedad: 17 años, 9 meses
Puntos: 0
ayuda con una consulta de un formulario en php.

buenos días compañeros, tengo el siguiente problema.

tengo una página que me lista el contenido de mi bbdd, para poder ponerlo todo bien he utilizado dos while,

el primero me lista la tabla principal. el segundo while me lista el contenido de una tabla puente que dependen del id_plantilla de la tabla principal.

el problema es que el 2º while tiene esta consulta.

Código PHP:
$sSQL2="select descriptor from principal, descriptor, localizacion, tabla_puente_descriptor 
where principal.id_plantilla = tabla_puente_descriptor.id_plantilla  
and descriptor.id_descrip = tabla_puente_descriptor.id_descrip  
and principal.id_localizacion = localizacion.id_localizacion and principal.id_plantilla ='$row['id_plantilla']'"
;
$result2=mysql_query($sSQL2);
while (
$row=mysql_fetch_array($result2))
{
echo 
$row['descriptor'];

el $row['id_plantilla'] que esta en la consulta lo saco de la primera consulta de sql.



el código de todo es:

Código PHP:
<html>

<head> <title>listado de proyectos</title></head>
<body>
<?
//Conexion con la base
mysql_connect("localhost","daniel","daniel");
mysql_select_db("gestion");

//consulta de las 3 tablas que se quieren visualizar.

$sSQL="select * from principal, descriptor, localizacion, tabla_puente_descriptor 
where principal.id_plantilla = tabla_puente_descriptor.id_plantilla  
and descriptor.id_descrip = tabla_puente_descriptor.id_descrip  
and principal.id_localizacion = localizacion.id_localizacion"
;
$result=mysql_query($sSQL);
while (
$row=mysql_fetch_array($result)){
echo 
"<table border=2> <tr><td>";
echo 
$row['id_plantilla'];
echo 
"</td><td><td></td><td></td></tr>";
echo 
"<tr><td>titulo</td><td>";
echo 
$row['titulo'];
echo 
"</td><td>localización:</td><td>";
echo 
$row['hijo'];
echo 
"</td></tr><tr><td>fecha de inicio</td><td>";
echo 
$row['fecha_inicio']; 
echo 
"</td><td>Fecha fin:</td><td>";
echo 
$row['fecha_fin'];
echo 
"</td></tr><tr><td>Descriptores:</td><td>";
$sSQL2="select principal.id_plantilla, descriptor from principal, descriptor, localizacion, tabla_puente_descriptor 
where principal.id_plantilla = tabla_puente_descriptor.id_plantilla  
and descriptor.id_descrip = tabla_puente_descriptor.id_descrip  
and principal.id_localizacion = localizacion.id_localizacion and principal.id_plantilla ='$row['id_plantilla']'"
;
$result2=mysql_query($sSQL2);
while (
$row=mysql_fetch_array($result2))
{
echo 
$row['descriptor'];

echo 
"</td></tr><tr><td>Descripcion:</td><td>";
echo 
$row['descripcion'];
echo 
"</td></tr></table><br><hr>";
}
?>

</body>
</html>
me da el siguiente error:

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\easyphp1-8\www\daniel\listado3.php on line 33

la linea 33 es la siguiente:
Código:
and principal.id_localizacion = localizacion.id_localizacion and principal.id_plantilla ='$row['id_plantilla']'";
creo que es porque no indico bien la variable dentro de la consulta, alguien me puede ayudar, como tengo que escribir la variable dentro de la consulta de sql.

gracias

oskar calvo.