Gracias webstudio y nok por responder!! ya lo arreglé con el link que me mandaste.
Ahora tengo otra pregunta:
Yo estoy haciendo un foro y estoy haciendo la página principal que tiene que salir asi:
Categoria 1
Foro 1
Foro 2
Categoria 2
Foro 3
Algo asi. Yo hice una consulta que me tira los datos asi
id_foro nombre id_categoria
1 Futbol 1
2 Basket 1
3 Software 2
Me tira 3 registros con su respectiva categoria por lo que hago un while mysql fetch array para que de las 3 vueltas.
Dentro de ese while tengo dos IF
Uno detecta si la categoria fue escrita, si no fue escrita la escribe poniendo
Categoria 1
Después pasa al segundo IF donde tiene que escribir el primer foro de esa categoria. Da la vuelta y como la categoria ya fue escrita y el segundo foro pertenece a esa categoria entonces no entra en el IF y pasa al segundo, al de los foros y lo escribe.
Esa es la lógica que uso, sin templates anda perfecto, sin problemas.
El problema es que no le encuentro la vuelta a la lógica a utilizar con templates.
Código PHP:
while($recordset=mysql_fetch_array($conectar->consultar)) {
if ($recordset["id_categoria"]!=$categoria) {
$html->asignar('TITULO_CAT',$recordset['titulo_cat']);
$categoria=$recordset["id_categoria"];
$html->expandir('FILAS_CAT','+categoria');
}
if ($recordset["id_categoria"]==$categoria) {
$html->asignar('TITULO_FORO',$recordset["titulo_foro"]);
$html->asignar('DESCRIPCION_FORO',$recordset["descripcion_f"]);
$html->asignar('CANT_TOPICS',$cant_t);
$html->asignar('CANT_POST',$cant_p);
$html->asignar('NICK',$recordset["nick_u"]);
$html->asignar('ID_USUARIO',$recordset["id_usuario"]);
$html->asignar('FECHAHORA',$recordset["fechahora_p"]);
$html->asignar('GRAFICO','');
$html->asignar('LINKFORO','');
$html->expandir('FILAS_FORO','+foro');
}
}
$html->expandir('contenido', 'categoria');
$html->imprimir('contenido');
En el html tengo algo asi
Código PHP:
{FILAS_CAT}
<!-- inicioBloque: categoria -->
<tabla>
VARIABLES
</tabla>
{FILAS_FORO}
<!-- inicioBloque: foro -->
<tabla>
Variables
</tabla>
<!-- finBloque: foro -->
<!-- finBloque: categoria -->
El problema es que me escribe las dos categorias, pero los 3 foros los escribe todos debajo de la última.
Quiero aclarar de nuevo que sin usar templates anda bien (como para dejar atrás dudas si anda bien o mal el código php) el problema es que no se si entendí bien la lógica de como trabaja el template.
Saludos