http://martin.com.uy/wp-content/themes/martinuy2/live/proxy.php?url_especifica=
0
11
Mar
2008

Separar diseño de código en php usando el motor de plantillas de phpBB

En el post anterior ya tiraba algunas líneas sobre como separar el diseño del código php usando el motor de plantillas de phpBB. Voy a continuar en este artículo con eso, explicar como hacer iteraciones y dejo un ejemplo práctico para descargar.

Recuerdo en primer lugar como quedaría la página php:
<?php
include_once("template.php");
//Incluimos el motor de plantillas
$template = new template(); //Creamos objeto que almacenará las variables para mostrar
$prueba = "Esta es una prueba"; //Variable con una cadena
$template->assign_vars(array(
'VARIABLE1' => $prueba,
//Asignamos las variables a los identificadores
));
$template->set_filenames(array(
'body' => 'prueba.html')); //Nombre del archivo a donde se volcará la información (la ruta ya está fijada en template.php)
$template->display('body'); //Generamos la salida
unset($template); //Limpiamos el objeto
?>

En el caso del código HTML sería:

<html><head><title></title></head><body>
<table>
<tr>
<td>
{VARIABLE1}
</td>
</tr>
</table>
</body></html>


El archivo template del include lo encuentran para descargar junto a la página php y el código html al final del artículo. Si desean cambiar la carpeta donde se guardan los archivos html, editen la línea que dice var $root = ‘template’;.

Creando iteraciones.

Las iteraciones o bucles son bloques de código que se repiten y van dejando en cada ciclo un valor. Este valor puede ser almacenado y puede, eventualmente, mostrarse en pantalla (en una tabla por ejemplo). El operador por excelencia asociado a esta operación es el for. Doy por descontado que saben usarlo; de lo contrario revisen el manual. La pregunta que vendría ahora es ¿cómo se relaciona esto con la salida HTML? Para responder los invito a analizar lo siguiente:

Código php:

for($i=0; $i<5; $i++)
{
$iteracion_out = array(
'I' => $i,
);
$template->assign_block_vars('iteracion', $iteracion_out);
}

Código HTML:

<table>
<!– BEGIN iteracion –>
<tr>
<td>
{iteracion.I}
</td>
</tr>
<!– END iteracion –>
</table>

El código php del ejemplo es muy sencillito: la variable $i va tomando valores naturales desde 0 hasta llegar a 4. Lo interesante es la matriz que se crea en cada vuelta y la función de la clase que se ejecuta. Esa función tiene como entradas el nombre del bucle (en ese caso “iteracion”) y el nombre de la matriz ($iteracion_out). En el código HTML encontramos el bucle identificado por <!– BEGIN nombre –> y <!– END nombre –>. Dentro, están las variables de la matriz nombradas de la forma {nombredelbucle.VARIABLE}.

Descargar: Ejemplo usando el motor de plantillas de phpBB

En el próximo artículo explico como usar los bloques (<!– BEGIN nombre –> y <!– END nombre –>) con condicionales y como anidarlos (unos dentro de otros).

Actualizo: Segunda parte -dicen que las segundas partes nunca fueron buenas… espero que esta sea la excepción! :P-.

14
Nov
2008
enzo

muy buena articulo. justo lo q estaba buscando.

14
Nov
2008

Me alegra que te haya servido Enzo 🙂

16
Nov
2010
pablo

hola, no se puede descarga el ejemplo, da error

1
Jul
2011

Продаю актуальные базы данных по Украине 2011
Перечень:
База налоговая по физическим лицам украины 2011
База налоговая по доходам граждан украины 2011
База налоговая по предприятиям Украины 2011
База Апра, 2011
База о судимостях, 2011
База о розысках, 2011
База о административных правонарушениях, 2011
База потерянных паспортов, 2011
База угнанных автотранспортных средствах, 2011
База украденных вещей; 2011
База наличии оружия, 2011
База личного автомобиля, 2011
База предприятия Украины 2011
База Балансы предприятий Украины 2011
База 09 телефоны квартир и предприятий Украины 2011
База Гаи Украины 2011
База земельный кадастр по Киеву и области 2011
База Таможня Украины 2011
База Частные предприниматели Украины 2011
База платильщики НДС Украины 2011
База Арбитражный суд Украины 2011
База данных – КОБРА – Украина 2011
База Объемы производства промышленных предприятий Украины 2011

Все вопросы: balans-ltd-ukraine@online.ua

8
Aug
2015
DennisMut

[b]Продам базу данных директоров г. Москвы и Московской области.[/b]
Состав базы:
-Компания,
-Структура,
-ФИО,
-Должность,
-Сотовый телефон,
-Рубрика,
-Адрес.
У многих есть email.
Дата сбора базы – 2015 год.
Количество записей – около60тысяч.
ICQ – 658548888.
email – borispenisov@gmail.com

  1. 3 Trackback(s)

  2. Mar 11, 2008: martin.com.uy » Artículos » Programar un fotolog desde cero.
  3. Mar 14, 2008: martin.com.uy » Artículos » Separar diseño de código en php usando el motor de plantillas de phpBB (II)
  4. Apr 11, 2008: martin.com.uy » Artículos » ¿Cómo agregar el Estado del Tiempo a tu sitio web?

Escribir un comentario