Está usted en Indice > Construcción > Lenguajes > ASP > Lecciones y Paso a Paso > Desarrollo de un libro de visitas usando XML y ASP
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

Desarrollo de un libro de visitas usando XML y ASP

El fichero de datos


El objeto de este mini-tutorial es desarrollar una aplicación práctica sencilla utilizando XML (eXtended Mark-up Language) y ASP (Active Server Pages). Para saber un poco más de XML, visita la "Introducción a XML en castellano" o cualquiera de las miles de páginas que existen en la red sobre el tema.

Para almacenar las firmas de los visitantes a nuestro website vamos a utilizar un documento XML de la siguiente forma:

<?xml version="1.0" encoding="ISO-8859-1"?>
<guestbook>
<item>
<author>Andres</author>
<email>andres@correo.com</email>
<datetime order="200005161603">16-5-2000 (16:03)</datetime>
<ip>197.50.123.14</ip>
<text>Hola, me gusta tu tutorial</texto>
</item>
<item>
<author>Juan</author>
<email>juan@email.es</email>
<datetime order="200005171413">17-5-2000 (14:13)</datetime>
<ip>195.2.170.174</ip>
<text>Saludos desde Albacete</text>
</item>
</guestbook>


Este documento XML contiene un elemento guestbook, que a su vez contiene elementos item. Un DTD para este documento sería el siguiente;

<!ELEMENT guestbook (item*)>
<!ELEMENT item (author, email, datetime, ip, text)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT email (#PCDATA)>
<!ELEMENT ip (#PCDATA)>
<!ELEMENT text (#PCDATA)>
<!ELEMENT datetime (#PCDATA)>
<!ATTLIST datetime order CDATA #REQUIRED>
La razón de almacenar la fecha y hora de dos maneras diferentes en el elemento datetime es tener un formato para visualización (dd-mm-aaaa hh:mm) y otro para ordenación (yyyymmddhhmm) sin tener que hacer cambios de formato de fecha.

La transformación a HTML


La transformación de XML a HTML la realizamos en el servidor, para asegurarnos una compatibilidad 100% con cualquier navegador web, utilizando el parser MSXML de Microsoft.

El documento XSLT que va a realizar la transformación es el siguiente (utilizando la implementación inicial de Microsoft para XSL)

<?xml version='1.0' encoding='UTF-7'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">

<xsl:template match="/">

<xsl:for-each select="guestbook/item" order-by="-datetime/@order">

<P><B><xsl:value-of select="author"/></B><BR/>

<A>
<xsl:attribute name="href">mailto:<xsl:value-of select="email"/>
</xsl:attribute>
<xsl:value-of select="email"/>
</A>
<BR/>

<xsl:value-of select="text"/>
<I><xsl:value-of select="datetime"/></I>
</xsl:for-each>

</xsl:template>
</xsl:stylesheet>
Es fácil ver que lo que hacemos es iterar a través de todos los elementos item contenidos en guestbook, y presentarlos como un documento HTML.



Usuarios que han visto este tema también han visto...

- Rotación de banners en ASP
- Paginar resultados cada X registros
- Bloquear IPs a través de un array con ASP
- Utilizando SAFileUp para realizar un upload
- Calculando Fechas y Horas en ASP


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 30-08-2008 a las 16:45:52