Así que acudo a ustedes para que den una luz a la oscuridad donde estoy.
Me propuse aprender PHP, MySQL y a golpes he logrado avanzar un poco. Comencé un pequeño sistema de noticias y lo he venido modificando y jugando con él.
Ahora estoy en un lío que no entiendo y por eso pido su ayuda.
Tengo este código para listar noticias:
Código PHP:
<?php
$_bd_->_sql_consulta("SELECT * FROM ".prefijo."noticias ORDER BY fecha_publicacion", "simple");
?>
<table border="1" width="90%">
<tr>
<td width="15%"><h3>ID</h3></td>
<td width="40%"><h3>Título</h3></td>
<td width="15%"><h3>Categoría</h3></td>
<td width="30%"><h3>Fecha</h3></td>
</tr>
<?php
while($fila = $_bd_->_sql_fetch_array())
{
?>
<tr>
<td><?php echo $fila["id"] ?></td>
<td><?php echo $fila["titulo"] ?></td>
<td>---</td>
<td><?php echo $fila["fecha_publicacion"] ?></td>
</tr>
<?php
}
?>
</table>
nestorovallos.com/forosdelweb/listado0.jpg
Hasta aquí todo bien el problema comienza cuando ingreso este while :
Código PHP:
<?php
while($fila = $_bd_->_sql_fetch_array())
{
?>
<tr>
<td><?php echo $fila["id"] ?></td>
<td><?php echo $fila["titulo"] ?></td>
<td><?php
$_bd_->_sql_consulta("SELECT c.id AS cid, c.nombre AS categoria, c.descripcion AS descripcion FROM ".prefijo."categorias c INNER JOIN ".prefijo."not_cat cn ON cn.id_categoria = c.id WHERE cn.id_noticia = ".$fila["id"]." ORDER BY c.nombre ASC", "simple");
while ($cat = $_bd_->_sql_fetch_array())
{
echo '<a href="#" title="'.$cat["categoria"].'">'.$cat["categoria"].'</a> <br> ';
}
?></td>
<td><?php echo $fila["fecha_publicacion"] ?></td>
</tr>
<?php
}
?>
nestorovallos.com/forosdelweb/listado1.jpg
Aquí comienza mi problema ya que no continúa el listado sólo lista la primera noticia.
Si intento algo (por prueba) como este código:
Código PHP:
</tr>
<?php
while($fila = $_bd_->_sql_fetch_array())
{
?>
<tr>
<td><?php echo $fila["id"] ?></td>
<td><?php echo $fila["titulo"] ?></td>
<td><?php
$a = 0 ;
while ($a<3)
{
echo " - 1<br>";
++ $a;
}
?></td>
<td><?php echo $fila["fecha_publicacion"] ?></td>
</tr>
<?php
}
?>
nestorovallos.com/forosdelweb/listado3.jpg
En otras palabras (parecerá algo tonto, pero recuerden que estoy aprendiendo) con este while logro ver que se cumple y sigue el listado. Y me dice que el problemas puede estar (creo yo) en el while donde tengo la consulta de categorias. Y pues en definitiva no lo veo.
AYUDA ¿Por qué no continúa el listado?
Gracias de antemano por tomarse la molestia de leer quizá tan larga e innecesaria explicación pero no encuentro otra manera de explicarme mejor.
P.D. Agradezco igualmente su ayuda.