Zona HTML Zona Java Zona PHP Zona ASP Zona Bases de datos
Inicio > Tutoriales > Internet > ASP > ASP y WAP
-Tutoriales

ASP y WAP


Aplicación WAP: parte I

. Ejemplo de aplicación: Consulta de valores de la bolsa

La aplicación de ejemplo permite al usuario realizar el mantenimiento y la consulta de su cartera de valores de bolsa. Para ello se utiliza una base de datos (formato access .mdb) en la que se contemplan las tablas con las relaciones siguientes.

Relaciones BD

Entre las operaciones disponibles en la aplicación figuran la consulta de los valores de la cartera del usuario, así como la compra y venta de valores.

Una característica común en todas las páginas es la identificación del tipo de información que el servidor web está enviando en este caso al servidor WAP. ASP permite esta identificación mediante la instrucción

<%  Response.ContentType = "text/vnd.wap.wml" %>

Deberán considerarse funcionalidades no se han tratado como controles de los formularios de entrada de datos o errores de acceso a la base de datos.

. Acceso y autentificación

En la página inicial del sistema (default.asp) se visualizan los campos de login o identificación del usuario (en este caso el dni y un password).

Autentificación
Página: default.asp
<%
 Response.ContentType = "text/vnd.wap.wml"
' se inicializa la variable de sesión con un valor cualquiera
' para controlar el fin de sesion
session("DNI")="acme" %>

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" 
"http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="login" title="Móvil-bank">
<p>
        Bienvenido<br/>
        DNI: <input type="text" name="dni" maxlength="8"/>
        Password:<input type="password" name="password" maxlength="8"/>
	<do type="accept" label="Aceptar">
		<go method="post" href="procesarlogin.asp"/>
	</do>
</p>
</card>
</wml>

Cuando el usuario haya introducido su identificación se envia al servidor la petición de la página "procesarlogin.asp" que comprobará la existencia del usuario en la BD. En caso afirmativo se muestra el enlace a la página del menú y en caso contrario se muestra un mensaje de usuario no autorizado.

Página: Procesar login
<% Response.buffer = true %>         
<%Response.ContentType = "text/vnd.wap.wml" %>         
<!--#include file="bd_init.asp" -->
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" 
"http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<%
    Dim strSQL
    Dim cnn1
    Dim rs   
    Call CrearConexion()   
    strSQL = "SELECT * FROM Cliente WHERE IdCliente='" & request.form("DNI")
             & "' AND password='" & request.form("password") & "'"
    rs.Open strSQL, cnn1
    if rs.EOF then %>
        <card id="login" title="Móvil-bank">
        <p>
        	Datos incorrectos. Vuélvelo a intentar <br/>
        	<do type="prev" name="anterior" label="Anterior">
        		<prev/>
        	</do>
        </p>
        </card>
<%   else   %>
        <card id="home" title="Móvil-bank">
        <p> 
        Hola <%=rs("nombre")%> !
        <anchor>
        	Menú <go href="menu.asp"/>
        </anchor>
          </p>
        </card>
<%
        ' Inicialización de las variables de sesión
        Session("DNI") = request.form("DNI")
    end if
    rs.Close
    cnn1.Close
%>
</wml>

. Include de conexión a BD y mantenimiento de la sesión

En la página anterior así como en todas las siguientes, se utiliza la técnica de incluir el archivo bd_init.asp que verifica la validez de la sesión e inicializa los objetos de acceso a base de datos que utilizan las páginas (connection y recordset).

En caso de que la sesión haya finalizado (típicamente por inactividad del cliente) se redirecciona de nuevo la página de inicio de la aplicación "default.asp"

Se utiliza el acceso mediante dsn por lo que deberá crearse el correspondiente origen de datos ODBC de tipo Access a la base de datos bolsa.mdb con el nombre "wapbolsa".

ODBC
Página: db_init.asp
<%
Sub CrearConexion
    Dim strCnn

    ' Comprobar que la sesión está activa
    if session("DNI")= "" then
        response.clear
        response.redirect "default.asp"
        response.end
    end if

    ' Abrir la conexión
    strCnn = "DSN=wapBolsa"
    Set cnn1 = Server.CreateObject("ADODB.Connection")
    cnn1.Open strCnn
    
    'Inicialización del objeto Recordset
    Set rs = Server.CreateObject("ADODB.Recordset") 
End sub
%>

 
Patrocinados
 

Copyright © 1999-2006 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network