Cómo integrar XML y Active Server Pages (ASP) para crear una lista de contactos telefónicos

En este artículo, aprenderemos cómo utilizar Extensible Markup Language (XML) y ActiveX Data Objects (ADO) junto con Active Server Pages (ASP) para guardar datos en formato XML y mostrarlos en el objeto de respuesta de ASP. Esta integración es posible gracias a la última versión de Internet Information Server (IIS 5) y ADO (2.6).

Índice de Contenido
  1. Creación de la base de datos y definición de la tabla
  2. Funcionalidad de ASP y formateo de los datos en XML
  3. Código de ejemplo para el programa Phonelist.asp
  4. Código fuente del archivo Phonelist.xsl

Creación de la base de datos y definición de la tabla

Antes de empezar con el proyecto Phonelist.asp, es necesario crear una base de datos en Access. La idea es desarrollar un conjunto de datos simple que pueda ser útil para cualquier empresa. El primer paso consiste en crear una tabla llamada "contacts" con cuatro campos: FirstName, LastName, Location y Phone. Es importante tener en cuenta que XML y Extensible Stylesheet Language (XSL) distinguen entre mayúsculas y minúsculas, por lo que los nombres de los campos deben coincidir con las definiciones en la hoja de estilo XSL.

Funcionalidad de ASP y formateo de los datos en XML

El objetivo principal de ASP en este proyecto es recuperar y devolver los datos en formato XML. Para lograr esto, seguiremos estos pasos:

  1. Especificar el tipo de contenido como text/xml.
  2. Agregar la información del encabezado XML y el enlace a la hoja de estilo para formatear los datos.
  3. Crear un objeto de registro ADO para recuperar los datos. Aquí es donde la tecnología XML es muy útil, ya que podemos guardar los datos directamente en el objeto de respuesta sin necesidad de mezclar HTML con código de script.

Como se ha mencionado en artículos anteriores, la facilidad con la que los desarrolladores pueden formatear y mostrar datos con XSL es realmente convincente. Al simplificar el proceso, se reduce la posibilidad de que ocurran problemas.

Código de ejemplo para el programa Phonelist.asp

<%@ Language=VBScript %>
<% 
  Response.ContentType = "text/xml"
  Response.Write "<?xml version='1.0' ?>" & vbCrLf
  Response.Write "<?xml-stylesheet type='text/xsl' href='#PhoneList.XSL' ?>" & vbCrLf & vbCrLf
  Set rsContacts = Server.CreateObject("ADODB.Recordset")
  dataConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                "User ID=Admin;Data Source=D:\Inetpub\wwwroot\ASP_Utils\PhoneList.mdb;" & _
                "Mode=Share Deny None;Extended Properties='';" & _
                "Jet OLEDB:System database='';Jet OLEDB:Registry Path='';" & _
                "Jet OLEDB:Database Password='';Jet OLEDB:Engine Type=5;" & _
                "Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;" & _
                "Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password='';" & _
                "Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;" & _
                "Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;" & _
                "Jet OLEDB:SFP=False;User Id=Admin;"
  sql = "SELECT LastName + ', ' + FirstName AS Name, " & _
        "Phone, Location FROM Contacts ORDER BY LastName"
  rsContacts.ActiveConnection = dataConnStr
  rsContacts.Source = sql
  rsContacts.CursorLocation = 3 'Use Client side cursor
  rsContacts.Open
  rsContacts.ActiveConnection = nothing
  rsContacts.Save response, 1 'adPersistXML
  Set rsContacts = Nothing
%>

Código fuente del archivo Phonelist.xsl

<HTML xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<TITLE>Lista telefónica de la empresa</TITLE>
<STYLE>
.Table {background:black}
.TableHead {font:bold; color:white; background:blue}
.ColumnHeader {font:normal 'Verdana' bold; color:white; background:blue}
.TableRow {font:x-small 'Verdana'; color:black; background:#CCCCCC}
</STYLE>
<BODY>
<DIV >
<TABLE CLASS="Table" ID="RecordTable">
<THEAD>
<TR CLASS="TableHead">
<TH CLASS="ColumnHeader">Nombre</TH>
<TH CLASS="ColumnHeader">Ubicación</TH>
<TH CLASS="ColumnHeader">Teléfono</TH>
</TR>
</THEAD>
<xsl:for-each select="xml/rs:data/z:row">
<TR CLASS="TableRow">
<TD><xsl:value-of select="@Name" /></TD>
<TD align="center"><xsl:value-of select="@Location" /></TD>
<TD><xsl:value-of select="@Phone" /></TD>
</TR>
</xsl:for-each>
</TABLE>
</DIV>
</BODY>
</HTML>

Cómo evitar problemas con caracteres especiales en XML

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Desarrollo, allí encontraras muchos artículos similares a Cómo integrar XML y Active Server Pages (ASP) para crear una lista de contactos telefónicos , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.