3 de noviembre de 2007

Usando Plantillas en Delphi for PHP

Introducción



En el mundo del desarrollo web es muy común crear crear interfaces HTML para nuestras aplicaciones escritas en PHP, el uso de plantillas (templates)nos permite separar el código PHP de su presentación.Delphi for PHP soporta el uso de plantillas, proveyendo de esta manera un diseño único y consistente a su sitio web.

Creando el proyecto



Para crear un nuevo proyecto escogemos, File->New Project->Application.Un proyecto es creado y mostrado en el ProjectManager con un nombre por defecto. Por defecto un archivo unit para el formulario también ha sido creado. Guardamos el proyecto escogiendo File->Save Project Asel cual nos presentará el cuadro de dialogo respectivo. Especificamos el directorio donde se guardaran los archivos del proyecto y digitamos el nombre del proyecto. Presionamos el botón Save. El proyecto ha sido añadido al ProjectManager.



En nuestro ejemplo vamos a crear una simple pagina de Identificación de Usuario (Login) y para eso vamos a colocar en el formulario los siguientes componentes: 1 Label, 1 Edit y 1 Button.

Para hacer esto, basta con seleccionar el componente necesario desde la Paleta de Herramientas y colocarlo sobre el formulario. Diseñamos la página de la siguiente manera:



En el Inspector de Objetos modificamos las propiedades de los componentes de acuerdo al cuadro siguiente:

Componente/Propiedad Name Visible
=============================================
Edit edtName True
Label lbMensaje False
Button btnLogin True

Seleccionamos el botón y en su evento OnClick escribimos el siguiente código PHP:

function btnLoginClick($sender, $params)
{
$this->lbMensaje->Caption = 'Bienvenido '.$this->edtNombre->Text;
$this->lbMensaje->Visible = true;
}

Es importante saber que el nombre que le damos a los componentes se han de utilizar en la plantilla que iremos a usar en el sitio web, como veremos más adelante.



Seleccionamos el formulario haciendo Click sobre el mismo y en el Object Inspector vamos a modificar las siguientes propiedades: TemplateEngine y TemplateFilename.

TemplateFilename, nos permite especificar un archivo .html que nos servirá como plantilla. En este archivo se encuentran especificadas unas “marcas” que hacen referencia al nombre de los componentes que acabamos de crear en el paso anterior. La forma de crear estas marcas en la plantilla .html deben tener la forma {$nombrecomponente}, en nuestro caso serían así: {$lbMensaje}, {$edtNombre} y {$btnLogin} para cada componente respectivamente.

TemplateEngine, nos permite especificar el motor que hará que nuestros componentes se muestren en la posición indicada dentro de nuestra página. Delphi for PHP viene instalado por defecto con un motor llamado Smarty.

Las plantillas que usa Delphi for PHP son del tipo .html, y lo unico que nos queda hacer, es colocar las marcas dentro del código html. Para nuestro ejemplo, cuento con una plantilla de nombre index.html, el mismo que he especificado en la propiedad correspondiente. Cuando trabajamos con plantillas, Delphi for PHP ejecutará el código PHP internamente, y el usuario lo único que verá será una página web basada en plantilla.


Veamos cómo se ve nuestra página cuando la ejecutamos dentro del mismo Delphi for PHP.

Ejecutando la aplicación



Presionamos la tecla F9 para ejecutar la aplicación, y esto es lo que veremos:



Note que la aplicación toma el diseño especificado en la plantilla. A continuación, escribimos el nombre del usuario dentro de la casilla y luego presionamos el botón Aceptar. La aplicación procesará el código PHP especificado en el botón y mostrará un mensaje de bienvenida en la parte superior de la página.



Conclusión


Delphi for PHP es una gran herramienta que evoluciona y lleva al siguiente nivel el desarrollo profesional de aplicaciones web usando PHP.

No hay comentarios.: