introducción al diseño de aplicaciones asp
Post on 29-May-2018
226 Views
Preview:
TRANSCRIPT
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
1/48
Introduccin al diseo de AplicacionesWeb con Active Server Pages
Pedro Rufo Martn
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
2/48
Pginas Active Server - ASP http://www.asptutor.com 2
INDICE
INDICE..................................................................................................................................................................................2
PGINAS ACTIVE SERVER ........................................................................................................................................3
EL MODELO DE PGINAS ASP .........................................................................................................................................3CREAR PGINAS ASP........................................................................................................................................................3
SOFTWARE NECESARIO PARA LA EJECUCIN DE PGINAS ACTIVE SERVER ..........................4
INTERNET INFORMATION SERVER ..................................................................................................................... 5
INTRODUCCIN ..................................................................................................................................................................5INSTALACIN DEL PROTOCOLO TCP/IP..........................................................................................................................6MECANISMOS DE SEGURIDAD..........................................................................................................................................6
AGREGAR SECUENCIAS DE COMANDOS..........................................................................................................9
ESTABLECER EL LENGUAJE DE LA APLICACIN ..........................................................................................................10COMENTARIOS EN VBSCRIPT........................................................................................................................................10DISTINGUIR ENTRE MAYSCULAS Y MINSCULAS.....................................................................................................11
TIPOS DE DATOS EN VBSCRIPT...........................................................................................................................12
CONVERSIN DE TIPOS...................................................................................................................................................13VARIABLES EN VBSCRIPT .............................................................................................................................................13CONSTANTES EN VBSCRIPT ..........................................................................................................................................15
OBJETOS INTEGRADOS DE ASP...........................................................................................................................16
OBJETO APPLICATION.....................................................................................................................................................17OBJETO REQUEST ............................................................................................................................................................19OBJETO RESPONSE ..........................................................................................................................................................21
OBJETO SERVER...............................................................................................................................................................22OBJETO SESSION..............................................................................................................................................................23
EL ARCHIVO GLOBAL.ASA.....................................................................................................................................25
COOKIES...........................................................................................................................................................................27
COMPONENTES ACTIVEX.......................................................................................................................................29
COMPONENTE ADROTATOR..........................................................................................................................................30COMPONENTE FILESYSTEMOBJECT .............................................................................................................................32OBJETO TEXTSTREAM ....................................................................................................................................................33
FUENTES DE DATOS ODBC.....................................................................................................................................35
ACTIVEX DATA OBJECT ..........................................................................................................................................39
OBJETO CONNECTION (PROPIEDADES Y METODOS)....................................................................................................41OBJETO ERROR (PROPIEDADES Y MTODOS)...............................................................................................................44OBJETO RECORDSET.......................................................................................................................................................45
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
3/48
Pginas Active Server - ASP http://www.asptutor.com 3
Pginas Active Server
Pginas Active Server (ASP, Active Server Pages) es un entorno para crear y ejecutar
aplicaciones dinmicas e interactivas en la Web.
Se puede combinar pginas HTML, secuencias de comandos y componentes ActiveX paracrear paginas y aplicaciones Web interactivas.
El modelo de Pginas ASP
Las pginas ASP comienzan a ejecutarse cuando un usuario solicita un archivo .asp alservidor Web a travs del explorador. El servidor web llama a ASP, que lee el archivosolicitado, ejecuta las secuencias de comandos que encuentre y enva los resultados al
explorador del cliente.
Puesto que las secuencias de comandos se ejecutan en el servidor, y NO en el cliente, es elservidor el que hace todo el trabajo necesario para generar las paginas que se envan alexplorador. Las secuencias de comandos quedan ocultas a los usuarios, estos soloreciben el resultado de la ejecucin en formato HTML.
Desaparece por tanto el problema de si el cliente puede o no ejecutar sentencias decomandos, el servidor Web solo enva el resultado en cdigo HTML standard interpretablepor cualquier explorador.
Crear Pginas ASP
Los archivos .asp son archivos de texto normales, no es necesario ningn editor especialpara crearlos, puede usarse cualquier editor que genere cdigo ascii.
Un archivo .asp puede contener texto, cdigo HTML, cdigo ASP o cualquier combinacinde estos. Si no contiene cdigo ASP se comporta como un archivo .html normal.
Nota: todos los archivos .asp requieren una parte de proceso por el servidor, por lo cual
no es conveniente convertir a .asp los archivos que no contengan cdigo.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
4/48
Pginas Active Server - ASP http://www.asptutor.com 4
Software necesario para la ejecucin de Pginas Active Server
Para la implantacin de un servidor Web que soporte ASP el software necesario es, si lo
que estamos configurando es un servidor de alto rendimiento: WINDOWS NT 4.0 , 2000 o XP IIS 4.0 o 5.0 (INTERNET INFORMATION SERVER 4.0 - 5.0) IIS3.0 + ASP.EXE
Para desarrollo o sistemas Intranet los requerimientos son ms sencillos:
WINDOWS 95 + PERSONAL WEB SERVER 1.0 + ASP.EXE WINDOWS 98 o Millenium + PERSONAL WEB SERVER 4.0
Tanto IIS como Personal Web Server pueden descargarse desde la web de Microsoft.
Nota: Personal Web Server 4.0 esta incluido en algunas de las distribuciones de Windows98 en el directorio ADD-ONS\PWS
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
5/48
Pginas Active Server - ASP http://www.asptutor.com 5
Internet Information Server
1. Introduccin2. Instalacin de protocolo TCP/IP3. Seguridad del sitio Web
Introduccin
IIS es el software estndar que soporta comunicaciones Internet en Windows NT.
No es el nico, ni proporciona todos los servicios posibles; sin embargo su importancia esenorme al haberse convertido en uno de los ms extendidos; haciendo fuerte competencia alos servidores basados en plataformas UNIX.
El auge viene de la mano de la fuerte penetracin de Windows NT, complementndosemuy adecuadamente con este desde le punto de vista comercial y tcnico.
Proporciona unas buenas prestaciones en equipos con muy diferentes prestaciones dehardware.
Es especialmente ventajoso en su utilizacin en redes Intranet debido a la compatibilidad yposibilidades de uso conjunto con los productos de la familia Microsoft (Word, Access,Odbc, etc.)
Todo indica que el conjunto NT-IIS-Explorer ser utilizado de forma creciente para lapublicacin de datos en Intranet/Internet.
Los servicios bsicos que nos proporciona IIS4 son WWW, FTP, Correo y NEWS.
La instalacin de IIS es sobre NT Server 4.0, aunque se puede instalar sobre Workstation oWindows 95-98 la versin PWS 4 con la consiguiente perdida de prestaciones.
Workstation puede servir muy adecuadamente como banco de pruebas y aprendizaje.
Una de las principales ventajas de IIS4 es el soporte nativo de pginas ASP (tambin se
soportan en IIS3 mediante la actualizacin pertinente).
Para publicar en Intranet necesitamos:
Tarjeta adaptadora de red Un servidor DNS o WINS si deseamos usar nombres en vez de direcciones IP
numricas.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
6/48
Pginas Active Server - ASP http://www.asptutor.com 6
Para publicar en Internet necesitamos:
Una tarjeta de comunicaciones Una conexin a Internet Una direccin IP registrada en un DNS
Todo esto nos lo proporciona los Proveedores de Servicios Internet (ISP), junto conla direccin IP de gateway de su servidor, a travs del cual se realizaran losencaminamientos de la informacin.
Instalacin del protocolo TCP/IP
Se configura a travs de la ventana Reden el Panel de Control de Windows, en estaventana configuramos los servicios, protocolos, adaptadores y enlaces.
En la pestaa Protocolos seleccionamos TCP/IP, si no aparece, lo aadiremos con el botnAgregar.
Una vez escogido pulsamos Propiedades para configurarlo.
Pestaa Direccin IP:
Configuramos por cada tarjeta:
Adaptador (Tipo de tarjeta) Direccin IP Mascara de subred Gateway
PestaaDireccin DNS:
Nombre de Host + Dominio (identificacin de la maquina que estamosconfigurando)
Orden de bsqueda del servicio Dns Orden de bsqueda de sufijo de dominio (opcional)
Todos estos parmetros nos los proporciona nuestroproveedor ISP.
Mecanismos de seguridad
La seguridad de un sitio Web es especialmente importante, debido a la necesidad degarantizar su utilizacin por usuarios remotos.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
7/48
Pginas Active Server - ASP http://www.asptutor.com 7
IIS 4.o utiliza la seguridad de Windows NT y en algunos casos la amplia.
Se recomienda el uso del sistema de archivos NTFS de NT por su mayor seguridad.Windows NT basa su seguridad en el sistema de usuarios y contraseas, el uso adecuado
de estascontribuye a mantener el equipo seguro.La mayor parte de las peticiones de paginas Web son realizadas por clientes annimos, eneste caso, el servidor web se encarga de suplantar al usuario real mediante el uso de lacuenta del usuario annimo.
Mecanismo de seguridad en una peticin:
1. Comprobacin de la direccin IP del cliente por IIS.2. Comprobacin de usuario y contrasea.3. Comprobacin de los permisos de acceso a archivos establecidos en el sistema
NTFS.
Si cualquiera de estas comprobaciones es errnea, la peticin no tendr xito.
Administracin de la cuenta de usuario annimo.
Cuando se instala IIS se crea automticamente en NT el usuario annimo con el nombreIUSR_Nombre del equipo y con la misma contrasea aleatoria que en IIS y el derecho deInicio de Sesin en Local.
Conviene revisar los derechos de los grupos que tienen los grupos Todos e Invitados a losque pertenece el usuario annimo.
Para que el usuario annimo funcione correctamente debemos activar Permitir Annimosen las propiedades del servicio Web.
Autenticacin
Si se desea, se puede restringir la utilizacin de los servicios Web de tal forma quenicamente los clientes que proporcionan un nombre de usuario y una contrasea vlidospuedan acceder a las paginas solicitadas.
En IIS existen 2 formas de autenticacin:
Autenticacin Bsica : El usuario y la clave se transmiten sin cifrar Autentificacin Desafo/Respuesta de Windows NT: El usuario y la clave se
transmiten cifrados; el usuario debe de estar dado de alta en el dominio de lamaquina que ejecuta IIS y tener derechos de Acceso al equipo desde la red.Es muy adecuado en redes Intranet; precisa un cliente Internet Explorer enversin 2 como mnimo.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
8/48
Pginas Active Server - ASP http://www.asptutor.com 8
Generalmente se permiten simultneamente Annimos y mecanismos de autenticacin, eneste caso en primer lugar se usa el usuario Annimo y si se produce un error por falta depermisos de acceso a un recurso, el cliente recibe una ventana de dialogo solicitndole lascredenciales.
Establecimiento de permisos en los directorios y ficheros de un sitio Web (aspectosBsicos)
De forma genrica un sitio Web reside en
Un directorio particular Los subdirectorios que parten del particular Los directorios virtuales
Cada uno de los elementos anteriores, en caso de existir, deber poseer los suficientespermisos para que el sitio Web funcione correctamente, pero con las restricciones
adecuadas para que el equipo este seguro.Una buena metodologa consiste en agrupar los ficheros segn su naturaleza y de forma jerrquica; de manera que tengamos separadas distintas aplicaciones en distintosdirectorios, con sus documentos en subdirectorios.
La asignacin general de permisos sigue la siguiente estructura:
Programas CGI, ISAPI, etcPermiso deEjecucin
Pginas ASPPermisos deLectura yEjecucin
Documentos estticos HTML, Imgenes, etcPermiso deLectura
Bases de datos, ficheros auxiliares, etc.Permisos deLectura yEscritura.
Nota: Se debe tener en cuenta que desde IIS se pueden establecer permisos de Lectura y
Ejecucin, y desde NT cualquier permiso implementado en NTFS. En caso de discrepancia
se toma la opcin ms restrictiva.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
9/48
Pginas Active Server - ASP http://www.asptutor.com 9
Agregar secuencias de comandos
Como vimos anteriormente, una pagina ASP mezcla en el mismo archivo secuencias de
comandos con cdigo HTML standard. Las secuencias de comandos asp se distinguen delresto del texto del archivo mediante delimitadores (un delimitador es un carcter osecuencia de caracteres que marca el principio o final de una unidad).
En el caso de HTML , dichos delimitadores son los smbolos "" que enmarcan lasetiquetas Html. ASP utiliza los delimitadores
""
para enmarcar las secuencias de comandos.
Veamos esto con un ejemplo sencillo:Hola, bienvenido a mi pgina, estamos a :
La funcin NOW() de VBScript devuelve la fecha y hora actuales.
Cuando el servidor Web procese la pagina nos devolver el siguiente resultado alexplorador:
Hola, bienvenido a mi pgina, estamos a : 4/1/2000 14:25:55 PM
Como vemos, el cliente, no recibe el cdigo asp, recibe el resultado de la ejecucin dedicho cdigo.
Dentro de los delimitadores ASP se puede incluir cualquier instruccin, expresin,procedimiento u operador vlido para el lenguaje de programacin que estemos usando. Unejemplo de esto seria una pgina que nos mostrara:
Buenos das
si la ejecutamos antes de las 12:00 o:
Buenas Tardes
si la ejecutamos despus de esta hora, el cdigo seria el siguiente:
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
10/48
Pginas Active Server - ASP http://www.asptutor.com 10
= #12:00:00 AM# And Time( ) Buenos dasBuenas Tardes
Establecer el lenguaje de la aplicacin
ASP viene de forma nativa con dos motores de secuencia de comandos Microsoft VisualBasic Scriptig Edition (VBScript) y Microsoft JScript. Puede instalar y utilizar motores deotros lenguajes como REXX y Perl.
Para establecer el lenguaje principal de secuencia de comandos en todas las pginas de unaaplicacin, establezca la propiedad Lenguaje ASP predeterminado en la ficha Opciones dela Aplicacin en el Administrador de Servicios Internet.
Para establecer el lenguaje principal de secuencia de comandos en una nica pgina, hayque agregar la directiva al principio del archivo .asp. La sintaxis deesta directiva es la siguiente:
donde Lenguaje_secuencia_comandos es el lenguaje principal de secuencia de comandosque va a establecer en esa pgina concreta. El valor de la pgina invalida el valor global detodas las pginas de la aplicacin.
Todos los ejemplos de estas pginas estn escritos en VBScript
Comentarios en VBScript
VBScript acepta comentarios marcados con apstrofes. Estos comentarios se eliminan alprocesarse la secuencia de comandos y no se envan al explorador.
'Esta linea y las siguientes son comentarios.'La funcin ImprimirTabla imprime los elementos de una matriz.Call ImprimirTabla (mimatriz( ))
No puede incluir comentarios en expresiones de resultados. Por ejemplo, la primera lneaque sigue funciona, pero la segunda no, porque empieza con
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
11/48
Pginas Active Server - ASP http://www.asptutor.com 11
Distinguir entre maysculas y minsculas
VBScript no distingue entre maysculas y minsculas.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
12/48
Pginas Active Server - ASP http://www.asptutor.com 12
Tipos de datos en VBScript
Vbscript solo tiene un tipo de datos llamado Variant.
El tipo Variant es una clase especial de datos que puede contener diferentes tipos deinformacin, se comporta como un nmero cuando se utiliza en un contexto numrico, ycomo una cadena de caracteres cuando se usa en un contexto de cadena, no obstantepodemos forzar a que los nmeros se comporten como cadenas ponindolos entre comillas(" ").
Aunque solo existe un tipo de datos, podemos hacer distinciones mas precisas acerca de lanaturaleza de la informacin a travs de los Subtipos incluidos en el tipo Variant, ademsvbscript pone a nuestra disposicin funcionespara convertir los datos de un tipo a otro.
Subtipo Descripcin Valor de Vartype
Empty Variable sin inicializar 0
Null Variable intencionadamente vacia 1
Boolean Dos valores posibles True o False 11
Byte Entero entre 0 y 255 17
Integer Entero entre -32.768 y 32.768 2
Currency Numero entre -922.337.203.685.477,5808 y922.337.203.685.477,5807
6
Long Numero entre -2.147.483.648 y 2.147.483.647 3
Single Numero de precisin simple 4
Double Numero de doble precisin 5
Date Fecha entre 1-1-100 y 31-12-9999 7
StringCadena de longitud variable hasta 2.000.000.000
de caracteres.8
Object Contiene un Objeto 9
Error Contiene un numero de error 10
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
13/48
Pginas Active Server - ASP http://www.asptutor.com 13
Conversin de Tipos
Todas la funciones de conversin de tipos tienen la misma sintaxis:
Funcion(expresin), siendo expresin el dato que se desea convertir.
Cbool Convierte una expresin a tipo Boolean
Cbyte Convierte una expresin a tipo Byte
Clnt Convierte una expresin a tipo Integer
Clng Convierte una expresin a tipo Long
Csng Convierte una expresin a tipo Single
Cdbl Convierte una expresin a tipo Double
Ccur Convierte una expresin a tipo Curency
Cdate Convierte una expresin a tipo Date
Cstr Convierte una expresin a tipo String
Tambin podemos podemos conocer el subtipo de una variable mediante la funcinVartype(variable) que nos devuelve el valor referenciado en la tercera columna dela tabla 1
Variables en VBScript
Vbscript no necesita la declaracin explicita de variables, pero es conveniente sudeclaracin para evitar errores (se puede forzar la declaracin de variables incluyendo lasentencia al principio de la pagina .asp).
Para declarar una variable se utiliza la instruccin DIM. PUBLIC o PRIVATE. Porejemplo:
Restricciones del los nombres de variables:
Debe comenzar con un carcter alfabtico No puede contener un punto No debe superar los 255 caracteres
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
14/48
Pginas Active Server - ASP http://www.asptutor.com 14
Asignacin de valores a una variable escalar (variable que contiene un nico valor):
MiVariable = "pepito"
Nota: al asignar valores a las variables debemos atenernos a las siguientes normas:
Los valores de cadena se asignan entre comillas -> MiVariable = "pepito" Los valores numericos se asignan sin comillas -> MiVariable = 33 Los valores de fecha se asignan entre almohadillas -> MiVariable = #12-1-1999#
Declaracin de Matrices:
Se declaran del mismo modo que las escalares, con la diferencia de que las matrices utilizanparntesis ( ) a continuacin del nombre de la variable; dentro del parntesis pondremos elnmero de elementos de que consta la matriz.
Dim MiMatriz(10)
NOTA IMPORTANTE: Vbscript numera los elementos a partir del 0, lo que implica queuna matriz definida como MiMatriz(5) tendra autnticamente 6 elementos: MiMatriz(0),
MiMatriz(1), MiMatriz(2), MiMatriz(3), MiMatriz(4), MiMatriz(5)
Para asignar un valor a una posicin cualquiera de la matriz simplemente nos referiremos alindice de la matriz que queremos actualizar:
MiMatriz(2) = 122
Lo mismo para recuperar un valor almacenado:
MiVariable = MiMatriz(2)
Las matrices en VBScript pueden tener hasta 60 dimensiones separadas por comas, porejemplo, la siguiente instruccin define una matriz de 6 filas y 11 columnas:
Dim MiMatriz(5,10)
Tambin podemos definir matrices que cambien de tamao durante la ejecucin de lasecuencia de comandos (matrices dinamicas), para ello las declararemos sin poner elnumero de dimensiones Dim MiMatriz() y determinaremos las dimensiones con lasentencia Redim: Redim Mimatriz(22). Si queremos conservar los valores almacenados enla matriz cuando variamos su tamao debemos aadir la sentenciaPreserve:
Redim Mimatriz(12)......Redim Preserve Mimatriz(20)
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
15/48
Pginas Active Server - ASP http://www.asptutor.com 15
Constantes en VBScript
Son variables que nunca cambian, se definen con la sentencia CONST
Const Miconstante = "texto que nunca cambia"
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
16/48
Pginas Active Server - ASP http://www.asptutor.com 16
Objetos integrados de ASP
Objeto Application: el objeto Application se utiliza para compartir informacinentre todos los usuarios de una aplicacin.
Objeto Request: el objeto Request se utiliza para tener acceso a la informacin quese pasa en las peticiones HTTP. Entre dicha informacin se incluyen los parmetrosque se pasan desde los formularios HTML mediante el mtodo POST o el mtodoGET, cookies y certificados de cliente.
Objeto Response: el objeto Response se utiliza para controlar la informacin quese enva al usuario. Esto incluye el envo de informacin directamente alexplorador, la redireccin del explorador a otra direccin URL o el establecimientode valores de las cookies.
Objeto Server: el objeto Server proporciona acceso a los mtodos y laspropiedades del servidor. El mtodo utilizado ms frecuentemente es el que creauna instancia de un componente ActiveX (Server.CreateObject).
Objeto Session: el objeto Session permite almacenar la informacin necesaria parauna determinada sesin de usuario. Las variables almacenadas en el objeto Sessionno se descartan cuando el usuario pasa de una pgina a otra dentro de la aplicacin,si no que dichas variables persisten durante todo el tiempo que el usuario tieneacceso a las pginas de la aplicacin. Tambin puede utilizar los mtodos deSession para terminar explcitamente una sesin y establecer el periodo de tiempo
de espera de inactividad de las sesiones.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
17/48
Pginas Active Server - ASP http://www.asptutor.com 17
Objeto Application
El objeto Application se utiliza para compartir informacin entre todos los usuarios de una
aplicacin (entendemos por una aplicacin ASP todos los archivos .asp de un directoriovirtual y sus subdirectorios. Como varios usuarios pueden compartir un objeto Application,existen los mtodos Lock y Unlock para asegurar la integridad del mismo (varios usuariosno puedan modificar una misma propiedad al mismo tiempo).
Lock
El mtodo Lock asegura que slo un cliente puede modificar o tener acceso a las variablesde Application al mismo tiempo.
Sintaxis
ApplicationLock
Unlock
El mtodo Unlock desbloquea el objeto Application para que pueda ser modificado por otrocliente despus de haberse bloqueado mediante el mtodo Lock. Si no se llama a estemtodo de forma explcita, el servidor Web desbloquea el objeto Application cuando elarchivo .asp termina o transcurre su tiempo de espera.
SintaxisApplication.Unlock
Ejemplo
Eres el visitante numero
En el ejemplo anterior el mtodo Lock impide que ms de un cliente tenga acceso a lavariable Visitas al mismo tiempo. Si la aplicacin no se hubiera bloqueado, dos clientespodran intentar incrementar simultneamente el valor de la variable Visitas. El mtodoUnlock libera el objeto bloqueado de forma que el prximo cliente puede incrementar lavariable.Nota Importante:En el objeto Application pueden almacenarse matrices, pero estas son almacenadas comoun objeto, es decir, no podemos almacenar o recuperar un solo elemento de la matriz, si noque cargaremos o recuperaremos la variable con la matriz completa
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
18/48
Pginas Active Server - ASP http://www.asptutor.com 18
Ejemplo
Application.UnLock
con estas instrucciones almacenaramos TODA la matriz en la variable de aplicacin"Param"
Para recuperar los valores de la matriz primero recuperamos esta en una variable normal
Ahora podremos operar con los valores de la tabla en las variables Apliparam(0),
Apliparam(1) y Apliparam(2)
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
19/48
Pginas Active Server - ASP http://www.asptutor.com 19
Objeto Request
El Objeto Request recupera los valores que el cliente pasa al servidor durante una peticin
HTTP.Dependiendo de la forma en que enviemos los datos al servidor tendremos que utilizar unau otra de las diversas colecciones del objeto Request. Las mas tpicas son:
FORM recupera datos enviados desde un formulario mediante el mtodoPOST.
QUERYSTRING recupera datos enviados como cadena de consulta HTTP. COOKIES recupera los valores de las Cookies.
Sintaxis General:
Request.coleccion(elemento)
Ejemplos:
FORM
Supongamos que enviamos la informacin desde el siguiente formulario:
Nombre:
Nacionalidad:
En nuestra pgina "recibir.asp" podriamos usar la siguiente secuencia:
Hola Sr/a
Asi que usted es de nacionalidadCon lo que el resultado seria:
Hola Sr/a JulianAsi que usted es de nacionalidad francesa
QUERYSTRING
Supongamos que enviamos la informacin en forma de cadena de consulta (Notar que unacadena de consulta HTTP esta especificada por las parejas de valores que siguen al signo"?"):
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
20/48
Pginas Active Server - ASP http://www.asptutor.com 20
En nuestra pgina "recibir.asp" podriamos usar la siguiente secuencia:
Hola Sr/a
Asi que usted es de nacionalidadCon lo que el resultado sera:
Hola Sr/a JulianAsi que usted es de nacionalidad francesa
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
21/48
Pginas Active Server - ASP http://www.asptutor.com 21
Objeto Response
El Objeto response se usa para enviar resultados al navegador cliente o establecer valores
de Cookies.
Sintaxis general:
Response.metodo [valor]
Entre los mtodos mas interesantes del objeto Response estan los siguientes:
WRITE
El mtodo Write escribe una cadena de resultado en el navegador cliente (Nota: cuando seusa la sintaxis estamos usando implcitamente el mtodo Response.Write).
Ejemplo:
obtenemos
Hola mundo
REDIRECT
El mtodo Redirect hace que el explorador se conecte con una direccin URL diferente.
Nota: debemos usar este metodo antes de enviar cualquier resultado al navegador cliente,
en caso contrario produce un error.
Ejemplo:
El navegador se dirigir a la URL especificada
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
22/48
Pginas Active Server - ASP http://www.asptutor.com 22
Objeto Server
El objeto Server nos proporciona acceso a mtodos y propiedades del servidor.
Propiedades:
ScriptTimeout
Especifica la cantidad maxima de tiempo que puede tardar la ejecucin de una secuencia decomandos (Tiempo maximo que puede tardar en ejecutarse una pgina dada).
Sintaxis
Server.ScriptTimeout= n de segundos
Ejemplo:
La pgina puede ejecutarse durante 120 segundos antes de que el servidor la termine.
Metodos:
CreateObject
Crea una instancia de un componente ActiveX en el servidor.
Sintaxis
Server.CreateObject (IdProg)
IdProg es el identificativo del tipo de componente que queremos crear, nos vienesuministrado por el fabricante del componente.
Ejemplo:
Instancia un objeto de tipo recordset y lo asigna a la variable "Mitabla".
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
23/48
Pginas Active Server - ASP http://www.asptutor.com 23
Objeto Session
El objeto Session permite almacenar la informacin necesaria par una sesin de usuario
contra nuestra aplicacin ASP. Las variables que almacenemos en el objeto Session no sepierden al cambiar de pgina, si no que se mantienen hasta que el cliente sea eliminado porel servidor.
Las variables de Session de un cliente solo pueden ser accedidas por ese cliente.
El servidor crea automticamente el objeto Session cuando un usuario que no tengaactualmente una sesin solicita una pagina Web de la aplicacin.
Nota: el servidor elimina un cliente bien cuando desde una pagina ASP se invoca el
mtodo Abandon o bien cuando este cliente lleva 20 minutos sin actividad en nuestra
aplicacin.
Creacin de una variable en Session
Sintaxis
Sesion("Nomvariable")= valor
Ejemplo:
Para recuperar ese valor:
Esto nos almacenara el valor "rojo" en la variable "ColorFavorito"Nota Importante:En el objeto Session pueden almacenarse matrices, pero estas son almacenadas como unobjeto, es decir, no podemos almacenar o recuperar un solo elemento de la matriz, si noque cargaremos o recuperaremos la variable con la matriz completa
Ejemplo
con estas instrucciones almacenaramos TODA la matriz en la variable de sesin "Cesta"
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
24/48
Pginas Active Server - ASP http://www.asptutor.com 24
Para recuperar los valores de la matriz primero recuperamos esta en una variable normal
Ahora podremos operar con los valores de la tabla en las variables Micesta(0), Micesta(1) y
Micesta(2)
Metodos:
Abandon
Destruye todos los objetos y variables almacenados en el objeto Session.
Ejemplo:
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
25/48
Pginas Active Server - ASP http://www.asptutor.com 25
El archivo Global.asa
El archivo Global.asa es un fichero de texto situado en el directorio raiz de nuestroservidor Web, es decir, en el directorio de comienzo de nuestras pginas.
Es un archivo de comandos que nos permite la automatizacin de los cuatro eventos bsicosde nuestro servidor.
La estructura es siempre la misma:
Sub Application_OnStart........End Sub
Sub Application_OnEnd........End Sub
Sub Session_OnStart........End Sub
Sub Session_OnEnd........End Sub
Eventos:
Application_OnStart
El evento Application_OnStart se ejecuta antes de que se cree la primera nueva sesin; esdecir justo cuando el primer cliente pide una pagina de nuestro servidor.
Application_OnEnd
El evento Application_OnEnd se ejecuta cuando la aplicacin termina.
Session_OnStart
El evento Session_OnStart se ejecuta cuando el servidor crea una nueva sesin; estasecuencia de comandos es ejecutada antes de enviar la pgina solicitada al cliente.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
26/48
Pginas Active Server - ASP http://www.asptutor.com 26
Session_OnEnd
El evento Session_OnEnd se ejecuta cuando se abandona o se supera el tiempo de espera deuna sesin.
Ejemplo de Global.asa
Sub Application_OnStartdim mitabla()redim mitabla(9)application("tabla")=mitablaEnd Sub
Sub Application_OnEnd
End Sub
Sub Session_OnStartpaginaInicio="/ appl/index.html"response.redirect paginaInicioEnd Sub
Sub Session_OnEnd
End Sub
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
27/48
Pginas Active Server - ASP http://www.asptutor.com 27
Cookies
Las cookies son el mecanismo que nos permite guardar informacin relativa a un usuario alo largo de sus distintos accesos a nuestras pginas.
Nos permite integrar funcionalidades como:
Personalizacin de opciones de cliente Personalizacin en funcin de las caractersticas del cliente Cestas de compra Etctera.
Las cookies se almacenan en los equipos de los clientes, esto hay que tenerlo en cuenta porlas posibles faltas de integridad de datos que pudieran ocurrir.
ASP implementa la posibilidad de usar cookies para crear o destruir informacin que sealmacena en los equipos de los clientes.
Las cookies se transmiten en las cabeceras cuando se realiza la comunicacin http y es elnavegador el encargado de almacenarlas.
Las cookies se implementan como una coleccin y se usan mediante los objetos integradosRequest y Response.
Tiempo de vida de una cookie
Por defecto una cookie tiene un mbito de sesin, es decir, tiene de vida el tiempo en queesta activo el navegador.
Podemos variar el tiempo de vida de una cookie mediante el atributo expires.
Sintaxis:Response.Cookies(cookie)[(clave)|.atributo] = valorRequest.Cookies(cookie)(clave)
Ejemplos:
Enviar una cookie simple
Recuperar el valor de esa cookie
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
28/48
Pginas Active Server - ASP http://www.asptutor.com 28
Enviar una cookie con claves
Recuperar una cookie con claves
Nos recuperara el valormorado
Nos recuperara el valorblanco
Nota: Cuando usamos Responsepara escribir una cookie, si esta ya exista se sobrescribe.
Atributos:
Expires
Establece el da de caducidad de una cookie
Ejemplos:
Hacer que una cookie caduque inmediatamente
Hacer que una cookie caduque cierto da
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
29/48
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
30/48
Pginas Active Server - ASP http://www.asptutor.com 30
Componente ADRotator
El componente ADRotator automatiza la rotacin de imgenes de anuncio en una pginaWeb. Cada vez que un cliente abre o recarga la pgina este componente presenta una nuevaimagen segn las definiciones especificadas en un archivo.
Archivos necesarios:
Archivo Rotator Schedule: es un archivo de texto que contiene la agenda depresentacin de los anuncios.
Archivo de redireccin: es un archivo .asp que implementa la redireccin a la URLanunciante.
Creacin del objeto AdRotator
Propiedades:
Border
Permite especificar si los anuncios se presentan enmarcados.
Clickable
Permite especificar si los anuncios se presentan como hipervinculos.
TargetFrame
Permite especificar el marco de destino del hipervinculo.
Metodos:
GetAdvertisementRecupera el siguiente anuncio del fichero Schedule.
Sintaxis
Objeto.GetAdvertisement (url del fichero Shedule)
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
31/48
Pginas Active Server - ASP http://www.asptutor.com 31
Estructura del fichero ScheduleEl fichero Schedule esta dividido en 2 secciones separadaspor un asterisco "*". La primera seccin es la especifica los parmetros comunes paratodas las imgenes que se muestren; la segunda los ficheros , localizaciones y parametrospropios de cada una de las imagenes.
Sintaxis de la primera seccin:
REDIRECTEspecifica la url que se encargara de hacer laredireccin, generalmente una pgina .asp.
WIDTH Ancho en pxel del anuncioHEIGHT Alto en pxel del anuncioBORDER Ancho en pxel del borde del anuncio
Sintaxis de la segunda seccin:
Url de la imagen a mostrarUrl de la pagina a redireccionar
Texto alternativo de la imagenPonderacin de apariciones del anuncio con respecto del total
Ejemplo:
REDIRECT /util/redirect.asp
WIDTH 300HEIGHT 50BORDER 2*/imagenes/logo1.gifhttp://www.transcontinental.comEl viaje de tus sueos20/imagenes/logo5.jpghttp://www.pastelito.frDulces de calidad30
Ejemplo de fichero de redireccin
Ejemplo de una pgina completa
Uso de AdRotatorUso de AdRotator
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
32/48
Pginas Active Server - ASP http://www.asptutor.com 32
Componente FileSystemObject
El componente FSO nos permite abrir y crear ficheros de texto en el servidor.
Este componente consta de 22 mtodos, de los cuales podemos seleccionar 2 que son losque nos van a permitir leer o escribir en archivos de texto existentes en el servidor o creardichos archivos.
Para crear un objeto FSO la sintaxis es la misma que para cualquier otro componenteActiveX
Cuando abrimos o creamos un fichero de texto mediante FSO este nos devuelve unainstancia del objeto TextStreamque es la que representa el archivo fsico y con la cualtrabajaremos.
Metodos:
CreateTextFile
Crea un archivo fsico y devuelve la instancia de TextStreamcon la cual trabajaremos.
Sintaxis
Nombre Fichero Nombre del fichero a abrir.
ModoIndica si queremos abrir el fichero para lectura (1) , para escritura (2) o para
escribir nuevos registros al final del fichero(8)Crear
Admite los valores TRUE o FALSE, si el fichero no existe y el valor dado esTRUE se crea.
Ejemplo:
Apertura de fichero para lectura:
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
33/48
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
34/48
Pginas Active Server - ASP http://www.asptutor.com 34
SkipLine
Salta una lnea al leer un archivo.
Sintaxis
Write
Escribe una cadena de caracteres en un archivo.
Sintaxis
WriteLine
Escribe una cadena de caracteres en un archivo aadiendo al final un carcter de fin delinea.
Sintaxis
WriteBlankLines
Escribe un numero especifico de caracteres de nueva lnea.
Sintaxis
Ejemplo de escritura en un archivo
Ejemplo de FSO y TextStreamCreado archivo en C:\fecha.txt con la fecha de hoy
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
35/48
Pginas Active Server - ASP http://www.asptutor.com 35
Fuentes de datos ODBC
La administracin de orgenes de datos ODBC (Open Database Connectivity) es unautilidad general de Windows NT.
Permite que las aplicaciones accedan a los datos a travs usando SQL como lenguajeestndar.Se administran a travs de la ventana ODBC del Panel de Control.
Se pueden configurar tres diferente fuentes de datos ODBC, la forma ms interesante es lade DSN del Sistema, que presenta la ventaja de poder ser accedida por cualquier usuario,siendo el tipo usado en aplicaciones ASP.
Configuracin de una fuente de datos En este ejemplo declaramos una base de datosAccess, el procedimiento es prcticamente igual para cualquier otra tecnologa de bases dedatos.
Para declarar una base de datos ODBC haremos doble clik en el icono Fuentes de DatosODBC que encontraremos en el panel de control de Windows (Inicio->Configuracin->Panel de Control), una vez abierto el programa nos situaremos en la pestaa DSN deSistema
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
36/48
Pginas Active Server - ASP http://www.asptutor.com 36
Pulsaremos el botn AGREGAR para aadir una nueva fuente de datos, lo que nos llevara ala pantalla de controladores.
En esta ventana elegiremos el driver adecuado para la tecnologa de la base de datos quequeremos tratar desde nuestras pginas ASP y pulsaremos finalizar. La siguiente pantallaque se nos muestra nos pedir la ubicacin fsica de nuestra base de datos y el nombreODBC con el que queremos acceder a ella.
Nombre de origen de datos: Es el nombre simblico de nuestra base de datos, ser el queutilicemos desde ASP para referirnos a ella.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
37/48
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
38/48
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
39/48
Pginas Active Server - ASP http://www.asptutor.com 39
ActiveX Data Object
Una de las caractersticas mas interesantes de ASP es su facilidad para el manejo de bases
de Datos que residen en el servidor. Esto lo conseguimos mediante el uso de ADO(ActiveX Data Object) de una forma fcil, rpida y con un mnimo consumo de recursos delsistema.
ADO usa ODBCpara el acceso a bases de datos. lo que nos independiza de la tecnologade las mismas; esto implica que podemos cambiar la tecnologa de la base de datos y simantenemos la misma estructura de datos, nuestras aplicaciones desarrolladas con ADOpueden seguir funcionando sin cambiar ni una sola lnea de cdigo.
Para desarrollo podemos crear nuestras fuentes de datos en Microsoft Access, pero enentornos de produccin con gran afluencia de clientes deberemos de usar gestores de bases
de datos mas potentes, como Oracle, Microsoft Sql Server, etctera.
ADO esta formado por varios objetos organizados de forma jerrquica (cada uno de elloscon sus mtodos y propiedades especficos) de los cuales vamos a estudiar los queconsidero mas interesantes.
Objetos:
ConnectionNos proporciona una conexin a una base de datos ODBC desde una pgina ASP. Estaconexin nos permitir efectuar las operaciones que deseemos sobre la base de datos.
Es el objeto primario de ADO, ninguno de los otros objetos puede existir si este no esdeclarado de forma explicita o implcita (en algunos de los ejemplos veremos que no existe
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
40/48
Pginas Active Server - ASP http://www.asptutor.com 40
una declaracin del objeto Connection, pero debemos de tener en cuenta que siempreexiste, si es necesario ADO lo declarar por si mismo).
La conexin terminar cuando nosotros la cerremos explcitamente con el mtodo close obien cuando termine la ejecucin de la pgina ASP.
Error
Es una coleccin en la que se almacenaran los posibles errores del objeto
Command
Representa un comando SQL que se ejecuta contra la base de datos declarada en el objetoConnection.
Si el resultado de ese comando es un conjunto de datos, estos se almacenaran en un objetode tipo Recordset.
Recordset
Representa una tabla o el resultado de una consulta ejecutada contra la base de datos. Va aser nuestro interface natural contra la base de datos.
Como en todo modelo relacional, los datos se nos presentaran en filas y columnas.
Field
El objeto Field representa la informacin relativa a un campo de un Recordset.
Contiene la coleccin Fields que representa todos los campos de la tabla, cada miembro deesa coleccin es un objeto de tipo Field.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
41/48
Pginas Active Server - ASP http://www.asptutor.com 41
Objeto Connection (propiedades y metodos)
Hemos comentado que el objeto Connectionnos proporciona una conexin a una base dedatos desde una pgina ASP; ahora vamos a ver como se usa , as como sus propiedades ymtodos.
Para establecer la conexin lo primero que hacemos es crear el Objeto Connetion por mediode la propiedad CreateObject de objeto Server:
Una vez establecida la instancia del objeto pasamos a configurarlo mediante sus distintaspropiedades y mtodos.
Propiedades:
ConnectionString
Especifica la referencia a la base de datos con la cual queremos conectar, conteniendo enuna cadena de texto la informacin necesaria para efectuar esa conexin mediante parejasde valores separadas por ";".
Los valores que podemos asignar son:
Data Source: DSN=Nombre ODBC de la Base de DatosUsuario: User=Nombre de UsuarioPassword: Password=Password del usuario para la base de datos
Ejemplo:
Mode
Especifica los permisos de la conexin.
Algunos de los valores mas habituales que podemos asignar son:
1 Establece permiso solo de Lectura
2 Establece permiso solo de Escritura
3 Establece permiso de Lectura/Escritura
Ejemplo:
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
42/48
Pginas Active Server - ASP http://www.asptutor.com 42
Metodos:
BeginTrans
Abre una transaccin; todas las operaciones que realicemos a partir de ese momento no
sern efectivas hasta que no cerremos la transaccin.
Ejemplo:
Close
Cierra el objeto
Ejemplo:
CommitTrans
Cierra una transaccin haciendo efectivos los cambios efectuados dentro de ella.
Ejemplo:
Execute
Ejecuta una sentencia SQL contra la base de datos.
Ejemplo:
Open
Abre la conexin con los parmetros especificados en las propiedades.
Ejemplo:
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
43/48
Pginas Active Server - ASP http://www.asptutor.com 43
RollBackTrans
Desace todos los cambios efectuados en la base de datos desde el inicio de la transaccin.
Ejemplo:
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
44/48
Pginas Active Server - ASP http://www.asptutor.com 44
Objeto Error (propiedades y mtodos)
El objeto Error contiene la coleccin Errors , que es la encargada de almacenar los errores
que se pudieran producir durante la ejecucin de operaciones contra Bases de Datos.Propiedades:
Description
Descripcin del error.
Number
El numero de error.
SQLState
Cdigo de error SQL.
Metodos :
Clear
Elimina los datos del objeto Error.
Ejemplo:
Examinando los posibles datos de la coleccin Errors
.......
.......Miconexion.openIf Miconexion.Errors.Count > 0 thenFor each error in Miconexion.errors thenResponse.write Error.Number & " = "& Error.DescriptionnextEnd if
Nota: Count es una propiedad de la coleccin Errors.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
45/48
Pginas Active Server - ASP http://www.asptutor.com 45
Objeto RecordSet
El objeto Recordset es el interface entre los datos obtenidos de nuestras consultas sobre las
tablas y nuestras pginas asp. Representa una tabla organizada en filas (registros) ycolumnas (campos).
La propiedades y mtodos de Recordset son muchos, en este capitulo vamos a ver las masinteresantes, para hacerlo un poco mas sencillo de entender vamos a verlos agrupados porla funcionalidad que nos ofrecen.
Definicin del tipo de Cursor
Entendemos como cursor el puntero que nos permite desplazarnos por los registros delrecordset. Dependiendo del tipo elegido determinaremos los desplazamientos y cambiosrealizables en los datos.
El tipo de cursor lo definiremos mediante la propiedad CursorType, los posibles valoresson:
Denominacin valor Caractersticas
adOpenForwardOnly 0
Es el cursor por defecto, solo nos permiterecorrer la tabla de forma secuencial (no sepuede volver hacia atrs) y no permitemodificaciones en los registros. Por contra es elde menos consumo. No vemos los cambiosrealizados en la tabla por otro recordset.
adOpenKeyset 1
Nos permite movernos en los dos sentidos, sipermite modificaciones en los registros. Vemoslos cambios realizados en la tabla por otrorecordset a excepcin de las nuevas altas.
adOpenDynamic 2
Nos permite movernos en los dos sentidos, sipermite modificaciones en los registros. VemosTodos los cambios realizados en la tabla porotro recordset.
adOpenStatic 3
Nos permite movernos en los dos sentidos, nopermite modificaciones en los registros. No
vemos los cambios realizados en la tabla porotro recordset.
Definicin del tipo de Cerrojo
Entendemos como cerrojo el tipo de bloqueo que efectuaremos en la base de datos cuandomodifiquemos un recordset, a fin de evitar que dos o mas usuarios accedan a modificar unmismo registro a la vez.
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
46/48
Pginas Active Server - ASP http://www.asptutor.com 46
El tipo de cerrojo lo definiremos mediante la propiedad LockType, los posibles valores son:
Denominacin valor Caractersticas
adLockReadOnly 1Es el defecto; no permite al usuario modificar
los datos de la tabla.dLockPessimistic 2
Cuando se abra la tabla nadie mas podrhacerlo, este modo nos asegura la plenaintegridad de los datos.
adLockOptimistic 3
Cierra la tabla a los dems usuarios cuando seinvoque al mtodo Update del objeto recordset;de este modo la Base de datos quedarbloqueada menos tiempo que con el mtodoanterior.
Ejemplo de definicin de un recordset para actualizar datos:
Const adOpenForwardOnly = 0Const adOpenKeyset = 1Const adOpenDynamic = 2Const adOpenStatic = 3Const adLockReadOnly = 1Const adLockPessimistic = 2Const adLockOptimistic = 3%>
set rs=createobject("ADODB.Recordset")rs.CursorType = adOpenKeysetrs.LockType = adLockOptimistic
Movindose por los datos del RecordSet
Mtodos usados:
Mtodo Caractersticas
MoveNum_registrosMueve el cursor Num_registros hacia abajo si es positivoy hacia arriba si es negativo
MoveFirst Mueve el cursor al primer registro del RecordsetMoveLast Mueve el cursor al ultimo registro del RecordsetMoveNext Mueve el cursor un registro hacia adelante
MovePrevious Mueve el cursor un registro hacia atrs
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
47/48
-
8/9/2019 Introduccin al diseo de Aplicaciones asp
48/48
Abriendo y cerrando el recordset
Mtodos usados:
Metodo CaracteristicasAbre el recordset y almacena en el el resultado de sqlcontra la conexion
Open Sql, conexionset rs=createobject("ADODB.Recordset")rs.CursorType = 1rs.LockType = 3Sqltxt="SELECT * FROM libros"rs.open Sqltxt, "DSN=Biblioteca"
Close Cierra el recordset
Ejemplo de listado de un Recordset:
Listado.asp
top related