Bueno, pues he probado a hacer la sentencia que me pones abimaelrc:
var_dump($publicacion_sql);
var_dump($row_foro_disenioweb['id_categoria']);
Y el resultado es este:
Resumiendo, que en el bucle recoge el valor 1 y muestra el mensaje, luego muestra el valor 2 y muestra el mensaje y a la siguiente iteración no devuelve nada (no hay ningun mensaje) y ahí es donde casca...
Por otro lado no entiendo pq en las 2 iteraciones buenas que hace sale el titulo del mensaje y se carga la parte del autor y la fecha...
Alguna solución ??
Y haciendolo de estas 4 variables:
var_dump($publicacion_sql);
var_dump($row_foro_disenioweb['id_categoria']);
var_dump($nTema);
var_dump($uTema);
... sale esto, lo que hace ver que me está devolviendo en el numero de tema un NULL y x lo que sea casca. Que puedo hacer para controlar ese NULL y que siga iterando ??
Vale, tema solucionado, le he metido un IF diciendo que si la variable es NULL le de valor 0, y así funciona, pero ahora ya si que hay fallo en el PHP, y es que no me salen los "ECHO" del autor y la fecha...
Código PHP:
Ver original<?php do { ?>
<?php
$publicacion_sql = "SELECT id_mensaje FROM mensajes WHERE categoria = ".$row_foro_disenioweb['id_categoria'];
$temas_sql = "SELECT id_temas FROM temas WHERE categoria = ".$row_foro_disenioweb['id_categoria'];
$ultimo_sql = "SELECT tema, autor, fecha FROM mensajes WHERE categoria = ".$row_foro_disenioweb['id_categoria'] . " ORDER BY fecha DESC LIMIT 1";
$nTema = $a['tema'];
if ($nTema == NULL) {
$nTema = 0;
}
$uTema = "SELECT descripcion FROM temas WHERE id_temas = " . $nTema ;
?>
<tr>
<td width="45" align="center"><img src="imagenes/folder.png" width="40" height="40" /></td>
<td width="389"><span class="table_foros"><a href="categorias.php?cat=<?php echo $row_foro_disenioweb['id_categoria']; ?>"><?php echo $row_foro_disenioweb['nombre']; ?></a></span><br /> <span class="table_foros_descripcion"><?php echo $row_foro_disenioweb['descripcion']; ?></span><br /></td>
echo '<span class="table_foros_fechas">';
echo $ut['descripcion'];
echo '</span>';
echo '<br />';
echo '<span class="table_foros_fechas">';
echo ' por ';
echo '</span>';
echo '<span class="table_foros_autores">';
echo $up['autor'];
echo '</span>';
echo ' ';
echo '<span class="table_foros_fechas">';
echo $up['fecha'];
echo '</span>';
?>
</td>
<td align="center"><span class="table_foros_recuentos">
<?php echo mysql_num_rows($pTemasTotales); ?></span></td>
<td align="center"><span class="table_foros_recuentos">
<?php echo mysql_num_rows($pTotales); ?></span></td>
</tr>
Bueno pues haciendo un var_dump($up); , que es la parte que no me muestra, me da como resultado BOOL(FALSE);
¿Por qué puede ser ?
Tema solucionado, ya lo he arreglado!!