Está en la página 1de 47

Capacitacin de Herramientas para

el Desarrollo WEB
Modulo IX- ASP
Sesin #4
Mara Paz Coloma M.
mcoloma@inacap.cl

Aspectos Generales
Una pgina ASP puede contener:
Slo cdigo HTML
Slo cdigo ASP
Lenguajes script: Javascript
Una mezcla de lo anterior.

ASP:Cdigo ASP
El cdigo asp es distinguido dentro de la
pgina mediante los signos <% y %>
<% es el inicio, es decir, todo lo que este
dentro de estas llaves es considerado
cdigo asp y es interpretado por el servidor.
Para finalizar el cdigo asp, se utilizan los %>

ASP:Ejemplo de codigo ASP


<html><head><title>Ejemplo2</title>
<body>
<h3><center><u><b>Ejemplo2<b></u></center><h3
><br>
Instruccin ASP<br><br>
<% Response.write Hola Mundo ASP
</body>
</html>
En este ejemplo convive cdigo html y asp. El comienzo del
asp esta dado por los <%.

ASP:
Principales Inconvenientes
En general dentro de las pginas asp
convive el mundo grfico y el mundo de los
desarrolladores.
No es un lenguaje estructurado.
Trabaja bajo el modelo cliente/servidor, la
lgica cambia a las aplicaciones
tradicionales;

ASP: Declaracin de Variables


Como en todo lenguaje, las variables deben
declarse; Sin embargo, el tipo de dato se
omite:
<%
Dim strvar
Strvar=Hola Mundo
%>

ASP:Principales Objetos

Request
Response
Session
Application
Server

ASP:Objeto Request

Este objeto nos permite capturar informacin desde


un formulario.
Tiene 3 colecciones destacables, dos de ellas
dependen del mtodo de envo del formulario, estas
son:
Form
= asociado al mtodo Post.
Querystring = asociado al mtod Get.
ServerVariables.

ASP:Request.Form
Para capturar los datos que vienen en el
formulario, se tienen las siguientes opciones:
Request.Form(Nombre del control)
Request.Form(Indice del control)
Request.Form.Count:Para obtener el
nmero total pasados en el formulario.

ASP:Request.QueryString
Esta coleccin se utiliza para obtener los
datos enviados por URL.
Request.QueryString(Nombre campo)
Ejemplo:
http://www.dominio.cl/paginar.asp?
pactual=2&accion=retroceder
El valor de Request.QueryString(pactual)
es 2.

ASP: Request.ServerVariables
Esta coleccin nos permite acceder a toda la
informacin propia del servidor, y de quienes
realizan las conexiones al servidor.
Existen una lista de variables predefinidas,
como la de obtener la ip del host remoto,
mtodo de envo.
La sintaxis es la siguiente:
Request.ServerVariables(nombre variable)

ASP:Ejemplo de ServerVariables

Se tiene un listado de servervariables ya definidas.


Mayor informacin
http://www.arsys.es/soporte/programacion/objetosasp
.htm
Se requiere desplegar la ip del host remoto:
Request.ServerVariables(REMOTE_ADDR )

ASP:Objeto Response
Nos permite desplegar informacin en el
lado del cliente.
Tiene varios mtodos asociados, los ms
importantes son:
Response.write
Response.Redirect
Response.End
Response.Clear

ASP:Objeto Response
Este mtodo nos permite desplegar
informacin en pantalla.
La sintaxis es la siguiente:
Response.write Cadena de Texto
Ejemplo:
Response.write Hola Mundo

ASP:Response.Redirect
Este mtodo nos permite redireccionar a una
direccin url en particular, ya sea dentro del
mismo sitio o bien hacia internet.
La sintaxis es:
Response.Redirect(url)
Ejemplo:
Response.Redirect(http://www.inacap.cl)

ASP:Response.End
Termina la ejecucin del script, por lo tanto
todo el cdigo que exista despus de esta
instruccin no es ejecutado.
La sintaxis es:
Response.end

ASP: Application.lock
Es un mtodo que bloquea la modificacin de
las variables por cualquier usuario.
Ejemplo:
Application.Lock
Application(MiVariable)=12

ASP:Application.Unlock
Es un mtodo que permite modificar los
valores de las variables del tipo application.
Ejemplo:
Application.Unlock
Application(Dos)=5

ASP:Objeto Server
Este mtodo proporciona acceso a los
mtodos y a las propiedades del servidor.
De los mtodos ms importantes tenemos:
CreateObject
Mappath
ScriptTimeOut

ASP: Server.CreateObject
Es el mtodo ms importante, que nos
permite instanciar de los objetos.
La sintaxis es:
Server.CreateObject(ProgId), en donde
ProgId corresponde al nombre del objeto
Ejemplo:
Set con =
server.createobject(ADODB.Connection)

ASP: Server.Mappath
Devuelve la ruta actual. En visual su anlogo
sera curdir.
La sintaxis es:
Server.Mappath(URL)
Ejemplo:
Server.Mappth(archivo.asp)

ASP: Server.ScriptTimeOut
Esta propiedad nos permite determinar la
cantidad de segundos a transcurrir para que
un script deje de cargar.
La sintaxis es:
Server.ScriptTimeOut=Tiempo
Ejemplo:
Server.ScriptTimeOut=90

ASP:Objeto Session

Este objeto nos permite almacenar


informacion necesaria para una determinada
session de usuario.
La session de usuario tiene un tiempo de
duracin que es configurable.
La sintaxis es:
Session(Nombre Variable)=Valor
Ejemplo:
Session(login)=mipas

ASP:Acceso a Base de Datos

ASP utiliza el modelo de objetos de acceso


a base de datos conocido como ADO.
Existen dos formas de trabajar las base de
datos utilizando ADO:
Acceso DSN(Data Source Name)
OLE-DB

ASP:Acceso de Datos con DSN


ASP Support

ASP Application.

Data Source Name


DSN Entry
ODBC
DataBase Name

Base de Datos

ASP:Acceso a datos con OLE-DB

A diferencia del DSN, OLE-DB acta para


cualquier tipo de base de datos, y se
implementa en asp mediante una cadena de
conexin que incluye:

Proveedor de Base de Datos.


User Id
Password
Data Source
Initial Catalog

MODELO ADO

ADO es un modelo de objeto para


acceso a las Bases de Datos.
Se compone por:
Connection: enlace lgico con la base de
datos.
Command : ejecucin de comandos sql a
la base de datos.
Recordset : tabla virtual que acta como
respositorio lgico.

Modelo ADO-Connection
El objeto connection mantiene el enlace
lgico entre el sitio y/o aplicacin con la base
de datos.
Para utilizarlo, se trata como un objeto, por lo
que es necesario instanciar.

Modelo ADO-Connection
Para realizar la conexin desde asp, se debe
declarar una variable y luego instanciar.
Ejemplo:
<%
Dim con
set con= server.createobject(adodb.connection)
%>
Ahora con es del tipo connection, por lo que tengo
acceso a todos sus atributos y mtodos.

Modelo ADO-Connection
Dentro de las propiedades ms importantes
se encuentran:
ConnectionString: propiedad del tipo string en
donde se configura la conexin.
CommandTimeOut: propiedad nmerica, en donde
se configura la cantidad de segundos a esperar
antes de realizar un Timeout.
Provider: propiedad del tipo string, en donde se
configura el nombre del proveedor de la base de
datos.

Modelo ADO-Connection
Dentro de los mtodos ms importantes se
encuentran:
BeginTrans
: mtodo que indica que las instrucciones que
se estn ejecutando corresponden a una transaccin.
CommitTrans: mtodo que indica que materializa la transferencia
en las diferentes tablas.
RollbackTrans: mtodo que deshace los cambios efectuados por la
transaccin en las diferentes tablas.
Open
: mtodo que realiza la apertura de la conexin.
Recibe como parmetro un connectionstring, userid y password.
Close
: mtodo que realiza el cierre de la conexin
Execute
: mtodo que ejecuta una instruccin sql a la
base de datos.

Modelo ADO-Connection
Veamos un ejemplo:
<%
dim con,sqltxt
set con= server.createobject(adodb.connection)
con.connectionstring=dsn=ver
con.open ,sa
con.execute (insert cliente values(1,2,3))
con.close
set con=nothing

%>

Modelo ADO-Command
Un objeto command, debe ser
declarado y luego instanciado para ser
ocupado.
Puede como no depender de una
conexin. Es aconsejable de que
siempre exista una conexin para
realizar el enlace con el command.

Modelo ADO-Command
Este objeto permite ejecutar sentencias
sql sobre la base de datos.
No entrega resultados, salvo lo deje en
un recordset como resultado

Modelo ADO-Command
Dentro de las propiedades ms importantes:
ActiveConnection : propiedad, que nos
permite definir la conexin activa.
CommandText
: propiedad del tipo
string, permite definir la instruccin a
ejecutar en la Base de datos; Pueden ser
un procedimiento almacenado, una tabla,
una consulta sql entre otros.

Modelo ADO-Command
Dentro de los mtodos ms importantes:
Execute : permite ejecutar lo ingresado en
la propiedad commandtext.
CreateParameters: permite crear
parmetros que sern pasados a las
consultas para ser ejecutadas.

Modelo ADO-Command
Dentro de los mtodos ms importantes:
Veamos un ejemplo:
<%
dim con,sqltxt,comm
set con= server.createobject(adodb.connection)
set comm= server.createobject(adodb.command)
con.connectionstring=dsn=ver
con.open ,sa
comm.activeconnection=con
conm.execute (insert cliente values(1,2,3))
con.close
set con=nothing
set comm= nothing

%>

Modelo ADO-Recordset
Un objeto recordset acta como una tabla
virtual en donde se almacenarn en forma
lgica los registros de una tabla fsica.
Ideal para realizar consultas del tipo select o
utilizar tablas directamente.

Modelo ADO-Recordset
Para utilizar un objeto recordset se debe
declarar una variable y luego instanciar.
Un recordset puede ser el resultado de los
mtodos execute de la conexin o del
command.
Un recordset puede como no, depender de
una conexin.

Modelo ADO-Recordset
Dentro de las propiedades ms importantes se
encuentran:
CursorLocation : propiedad con dos valores posibles.
AdusesCliente, adusesServer. Definen los recursos a
utilizar.
CursorType: estrategias de cursores en el recordset.
Tiene 4 valores posibles:
adOpenForwarOnly,
adopenstatic,adopendynamic,adopenkeyset.
LockType: estrategias de bloqueo. Tiene 4 valores:
adlockreadonly,adlockpessimistic,
adlockoptimistic,adlockbatchoptimistic.

Modelo ADO-Recordset
Propiedades:
EOF: propiedad del tipo boolean,indica fin de la
tabla.
Fields: collecin de campos del recordset.Nos
permite tener acceso a informacin y contenidos
de los campos de un recordset.
Pagesize: tamao de la paginacin del recordset.
Muy utilizado por los buscadores.
Recordcount: indica el total de registros de un
recordset.

Modelo ADO-Recordset

Dentro de los mtodos se encuentran:


Movenext
: mueve al siguiente registro.
MovePrevious: mueve al registro anterior.
MoveFirst
: mueve al primer registro.
MoveLast
: mueve al ltimo registro.
Open
: realiza la apertura del recordset.
Close
: cierra el recordset activo.
Requery : realiza un refresh del recordset.
Save
: permite guardar el contenido del
recordset en un archivo de formato especifico de ado o bien
en xml.
GetRows : transforma el recordset en un arreglo.

Modelo ADO-Recordset
Ejemplo:
<%
dim con, rec , sqltxt
set con = server.createobject(adodb.connection)
set rec= server.createobject(adodb.recordset)
con.open dsn=ver,sa
sqltxt=select * from cliente
set rec= con.execute(sqltxt)
while rec.eof=false
response.write rec(rut)
rec.movenext
wend
con.close
set con=nothing
set rec= nothing
%>

PHP
<?
mysql_connect("localhost","root","" );
mysql_select_db( "mybase" );
?>
<html>
<head>
</head>
<body>
<table border="1">
<?
$sql="select * from programa";
$res=mysql_query($sql);
while( $row = mysql_fetch_object( $res ) ){
$titulo=$row->titulo;
$objetivos=$row->objetivos;
?>
<tr>
<td><?=$titulo?></td>
<td><?=$objetivos?></td>
</tr>
<?}?>
</table>
</body>
</html>

Include File Include Virtual


Sirven para modularizar cdigo.
Segn el tipo de path con el que se
identifique el archivo a incluir deber utilizar
la palabra virtual o file.
Include Virtual:
Hace referencia a un directorio virtual.
Ejemplo:
<!--#include virtual=/inc/inc.h-->

Include File Include Virtual


Include file:
Hace referencia a una ruta fsica
Ejemplo:
<!--#include file=c:\inc\inc.h-->
Se utilizan en los ASP.

Links
Varios:

http://www.lavariable.com
http://www.asp101.asp
http://www.asptutor.com
http://www.arsys.es/soporte/programacion
http://www.devguru.com
http://archive.devx.com/upload/free/features/vbpj/1999/05may99/ds
0599/ds0599.asp
http://www.webestilo.com/asp/
http://www.ciberteca.net/buscar/default.asp?buscar=asp
http://programacion.com/articulo/ale_include/

También podría gustarte