Vous êtes sur la page 1sur 40

****

1
****

Introduo

Sobre a ASP
No incio dos anos 90, quando a Internet ainda era tmida e no se viam suas
possibilidades comerciais, no havia porque se colocar os negcios da empresa
na rede. No havia clientela para comprar os produtos/servios oferecidos.
Bastava o HTML puro.
Passando-se o tempo e com a necessidade de se ter processamento no
servidor, foi criado o CGI, desenvolvido em linguagens compiladas como C,
VB ou Delphi, em linguagens interpretadas, como o Perl ou Rexx ou em
linguagens de shell script do Unix.
Em 1996 a Microsoft incorporou o ISAPI ao seu IIS (Internet Information
Server). Acompanhando esse passo, a Microsoft encorajou os desenvolvedores
a usar o IDC (Internet Database Connector), que era um novo meio de se
ligar as pginas Web a bancos de dados, atravs do ODBC (Open Database
Connectivity).
Aproximadamente em 1997, o ASP apareceu, em sua primeira verso, como
um upgrade do IIS 2.
Com a evoluo, o ASP passa pelas verses 2 e 3, at chegar mais recente:
ASP.NET.
ASP (Active Server Pages) uma especificao desenvolvida pela Microsoft
para pginas Web dinmicas e interativas. Uma pgina ASP uma pgina
HTML com comandos de script que so interpretados no servidor antes de a
pgina ser enviada ao browser do cliente. Isso explica a origem do termo
server-side script.
ASP gera pginas que so vistas em qualquer browser
A pgina ASP interpretada no servidor e envia ao browser do cliente o
HTML resultante. Por isso todo e qualquer browser pode receber os dados
enviados por ASP.
Processamento em uma pgina esttica:

Pgina [ 3 ]

Processamento em uma pgina ASP:

ASP no tem uma linguagem de programao embutida


A especificao (ou padro, como alguns chamam) necessita de uma
linguagem de scripts, j que possui apenas objetos. Pode ser qualquer uma,
pois o servidor Web (IIS - Internet Information Server) pode ser configurado
para aceitar linguagens diferentes do padro, que o vbscript. A segunda
opo o javascript. O padro vbscript foi definido pela Microsoft por ser
uma linguagem desenvolvida por ela mesma.

Pgina [ 4 ]

****

2
****

Objeto
Response

Propriedades
Buffer
Se for setado como True (default no ASP 3) faz o cache da pgina, isto ,
processa todas as linhas e depois manda o resultado para o cliente. False
o deafult no ASP 2.
SINTAXE: Response.Buffer ou Response.Buffer = valorLogico
Response001.asp
<%
Response.Write Response.Buffer
%>
Response002.asp
<%
x = 0
Do
x = x+1
Response.Write x & "<BR>"
Loop
%>
Response003.asp
<%
Response.Buffer = False
x = 0
Do
x = x+1
Response.Write x & "<BR>"
Loop
%>

CacheControl
Permite ao proxy a criao de cache das pginas. Se for setado o valor
Public (no se esquea das aspas), o proxy far cache. Se for definido o
valor Private o cache das pginas no ser usado. Pode-se usar o
Response.Expires ou Response.ExpiresAbsolute para definir o tempo
de vida das pginas em cache.
SINTAXE: Response.CacheControl = string
Response004.asp
<%
Response.Write Response.CacheControl
%>

Charset
Adiciona ao Header da pgina o uma string que contm o charset a ser
Pgina [ 6 ]

utilizado.
SINTAXE: Response.CharSet = string
Response005.asp
<%
Response.Charset = "pt-br"
%>

ContentType
Define o formato do contedo da pgina.
SINTAXE: Response.contentType = string
Response006.asp
<% Response.ContentType = "text/HTML" %>
<HTML>
<BODY>
<TABLE>
<TR>
<TD>2</TD>
<TD>4</TD>
</TR>
<TR>
<TD>5</TD>
<TD>6</TD>
</TR>
</TABLE>
</BODY>
</HTML>

Expires
Determina qual o tempo de vida do cache da pgina, em minutos.
SINTAXE: Response.Expires = tempo
Response007.asp
<%
Response.Expires = 0
Response.Write Now()
%>
Response008.asp
<%
Response.Expires = 10
Response.Write Now()
%>

ExpiresAbsolute
Define em qual data a pgina vai ter seu cache expirado. Deve ser informada
a data, com ano de quatro dgitos e dia de vinte e quatro horas.
SINTAXE: Response.ExpiresAbsolute = dataHora
Response009.asp
<%
Response.ExpiresAbsolute = #21/09/2003 14:35:56#

Pgina [ 7 ]

Response.Write Now()
%>

IsClientConnected
Verifica se o browser ainda est conectado ao servidor, desde a ltimo
Response.Write.
SINTAXE: Response.IsClientConnected
Response010.asp
<%
Set objConexao=Server.CreateObject("ADODB.Connection")
objConexao.Open "Biblioteca", "", ""
Set objRSLivros = Server.CreateObject("ADODB.Recordset")
objRSLivros.Open "SELECT * FROM livros", objConexao, adOpenStatic,
adLockPessimistic
%>
<HTML>
<BODY>
<%
Do until (objRSLivros.EOF or Response.IsClientConnected=False)
Response.Write objRSLivros.Fields("Titulo")
%>
<br>
<%
objRSLivros.MoveNext
Loop
objRSLivros.Close
objConexao.Close
%>
</BODY>
</HTML>

PICS
Define o tipo de contedo do site, atribuindo valores ao cada item, violncia,
sexo, linguagem imprpria ou nudez.
SINTAXE: Response.PICS(parametro)
Response011.asp
<%
Response.Pics("(PICS-1.1 labels on ""1997.01.05R08:15-0500"" until
A ""1999.12.31T23:59-0000"" ratings(v 2 s1 l 2 n 0))")
%>

Status
Define o status retornado pelo servidor. Voc deve passar um cdigo com 3
dgitos, seguido de uma breve descrio.
SINTAXE: Response.Status = codigo
Pgina [ 8 ]

Response012.asp
<%
enderecoIP = Request.ServerVariables("REMOTE_ADDR")
If enderecoIP <> "200.206.236.15" Then
Response.Status = "403 Acesso Negado - voc tem um IP invlido"
Response.Write Response.Status
Response.End
End If
%>
<HTML>
<BODY>
Voc acessou a pgina. Ento seu IP 200.206.236.15
</BODY>
</HTML>

Colees
Cookies
Coleo de tens de um cookie.
SINTAXE: Response.Cookies(nome)(item) = valor
Response013.asp
<%
Response.Cookies("cadastro")("Nome") = "Agnaldo"
Response.Cookies("cadastro")("SobreNome") = "Santos"
Response.Cookies("cadastro")("TelefoneRes") = "13 3224 2123"
Response.Cookies("cadastro")("TelefoneCom") = "11 3031 4312"
Response.Write Request.Cookies("cadastro")
%>

Mtodos
AddHeader
Adiciona uma nova chave ao header da pgina.
SINTAXE: Response.AddHeader nome, valor
Response014.asp
<%
Response.AddHeader "Autor", "Agnaldo"
Response.AddHeader "DataCriacao", CStr(Date())
%>

AppendToLog
Acrescenta uma nova linha ao log do IIS.
SINTAXE: Response.AppendToLog(stringSemVirgulas)
Pgina [ 9 ]

Response015.asp
<%
Response.AppendToLog("log gravado pelo usurio")
%>

BinaryWrite
Escreve valores binrios no cliente. til, por exemplo, quando se tem
imagens armazenadas em banco de dados e temos a necessidade de envilas ao browser cliente.
SINTAXE: Response.BinaryWrite dados
Response016.htm
<HTML>
<BODY>
<FORM NAME=EU METHOD=POST ACTION=RESPONSE016.ASP>
<INPUT TYPE=TEXT NAME=NOME>
<INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>
Response016.asp
<%
qtBytes = Request.TotalBytes
cadeia = Request.BinaryRead(qtBytes)
Response.BinaryWrite cadeia
%>

Clear
Limpa o buffer. Se o valor de Response.Buffer for setado como False, ocorre
um erro de run-time.
SINTAXE: Response.Clear
Response017.asp
<%
Response.Clear
%>

End
Interrompe o processamento e envia todo o contedo que est no buffer
para o cliente.
SINTAXE: Response.End
Response018.asp
<%
Response.Buffer = True
For i = 1 To 10
Response.Write i & "<br>"
Next
Response.End

Pgina [ 10 ]

Response.Write "Essa linha no ser enviada para o browser"


%>

Flush
Envia o contedo do buffer para o cliente, no interrompendo o processo.
SINTAXE: Response.Flush
Response019.asp
<%
Response.Buffer = True
For i = 1 To 10
For j = 1 To 5
Response.Write j & "<br>"
Next
Response.Flush
Next
%>

Redirect
Conecta o browser a outra pgina.
SINTAXE: Response.Redirect URL
Response020.asp
<%
Response.Redirect "Response021.asp"
%>
Response021.asp
<%
Response.write "Essa a Response021.asp"
%>

Write
Envia ao browser uma cadeia de caracteres.
SINTAXE: Response.Write string
Response022.asp
<%
Response.Write "<table width=100% border=1>"
For i = 1 To 10
Response.Write "<tr>"
For j = 1 To 10
Response.Write "<td align=center>" & i*j & "</td>"
Next
Response.Write "</tr>"
Next
Response.Write "</table>"
%>

Pgina [ 11 ]

****

3
****

Objeto
Request

Propriedades
TotalBytes
Informa a quantidade de bytes enviada ao cliente pelo servidor.
SINTAXE: Request.TotalBytes
Request001.htm
<HTML>
<BODY>
<FORM NAME=EU METHOD=POST ACTION=REQUEST001.ASP>
<INPUT TYPE=TEXT NAME=NOME>
<INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>
Response001.asp
<%
Response.Write Request.TotalBytes
%>

Colees
ClientCertificate
Usado com pginas que usem SSL (Secure Socket Layers). Informa dados a
respeito do certificado de segurana digital.
SINTAXE: Request.ClientCertificate(item)
Request002.asp
<%
For Each item in Request.ClientCertificate
Response.Write item & " - " & Request.ClientCertificate(item)
Next
%>

Cookies
O variant no foi inicializado.
SINTAXE:
Request.Cookies(nome)
ou
Request.Cookies(nome)(item)
Request003.asp
<%
Response.Cookies("comida")("salada") = "palmito"
Response.Cookies("comida")("sopa") = "legumes"
Response.Cookies("comida")("principal") = "arroz, tutu e costelinha"
Response.Cookies("comida")("sobremesa") = "pudim de leite condensado"

Pgina [ 13 ]

Response.Write Request.Cookies("comida") & " <i>(todos os elementos do


A cookie)</i><BR/><BR/>"
Response.Write Request.Cookies("comida")("principal") & " <i>(campo
A ""principal"")</i><BR/><BR/>"
Response.Write Request.Cookies("comida")(1) & " <i>(primeiro campo)</i>
A <BR/><BR/>"
For Each item in Request.Cookies("comida")
Response.Write item & " - " & Request.Cookies("comida")(item) &
A "<BR/>"
Next
%>

Form
Coleo que contm todos os campos passados por formulrio, usando o
mtodo POST.
SINTAXE: Request.Form(item)
Request004.htm
<HTML>
<BODY>
<CODE>
<FORM NAME=EU METHOD=POST ACTION=REQUEST004.ASP>
<P>Nome.........: <INPUT TYPE=TEXT NAME=NOME></P>
<P>Idade........: <INPUT TYPE=TEXT NAME=IDADE></P>
<P>Nacionalidade: <INPUT TYPE=TEXT NAME=NACIONALIDADE></P>
<INPUT TYPE=SUBMIT>
</FORM>
</CODE>
</BODY>
</HTML>
Request004.asp
<%
Response.Write Request.Form & " <i>(todos os elementos do form)</i>
A <BR/><BR/>"
Response.Write Request.Form("nome") & " <i>(campo ""nome"")</i><BR/>
A <BR/>"
Response.Write Request.Form(1) & " <i>(primeiro campo)</i><BR/><BR/>"
For Each item in Request.Form
Response.Write item & " - " & Request.Form(item) & "<BR/>"
Next
%>

QueryString
Coleo que contm todos os campos passados por formulrio, usando o
mtodo GET ou passados como parte do URL.
SINTAXE: Request.QueryString(item)
Pgina [ 14 ]

Request005.htm
<HTML>
<BODY>
<CODE>
<FORM NAME=EU METHOD=GET ACTION=REQUEST005.ASP>
<P>Nome.........: <INPUT TYPE=TEXT NAME=NOME></P>
<P>Idade........: <INPUT TYPE=TEXT NAME=IDADE></P>
<P>Nacionalidade: <INPUT TYPE=TEXT NAME=NACIONALIDADE></P>
<INPUT TYPE=SUBMIT>
</FORM>
</CODE>
</BODY>
</HTML>
Request005.asp
<%
Response.Write Request.QueryString & " <i>(todos os elementos do
A QueryString)</i><BR/><BR/>"
Response.Write Request.QueryString("nome") & " <i>(campo ""nome"")
A </i><BR/><BR/>"
Response.Write Request.QueryString(1) & " <i>(primeiro campo)</i>
A <BR/><BR/>"
For Each item in Request.QueryString
Response.Write item & " - " & Request.QueryString(item) & "<BR/>"
Next
%>

ServerVariables
Coleo que contm informaes a respeito do servidor.
SINTAXE: Request.ServerVariables(item)
Request006.asp
<%
Response.Write Request.ServerVariables("URL") & " <i>(item ""URL"")
A </i><BR/><BR/>"
Response.Write Request.ServerVariables(1) & " <i>(primeiro campo)</i>
A <BR/><BR/>"
%>
<HTML>
<BODY>
<CODE>
<TABLE BORDER=1 WIDTH=100%\>
<%
For Each item in Request.ServerVariables
Response.Write "<TR><TD>" & item & "</TD><TD WIDTH=*>" &
A Replace(Request.ServerVariables(item),Chr(13),"<BR/>") &
A "&nbsp;</TD></TR>"
Next
%>
</TABLE>
</CODE>
</BODY>
</HTML>

Pgina [ 15 ]

Mtodos
BinaryRead
L uma seqncia de bytes na forma binria.
SINTAXE: Request.BinaryRead(qtdBytes)
Request007.htm
<HTML>
<BODY>
<FORM NAME=EU METHOD=POST ACTION=REQUEST007.ASP>
<INPUT TYPE=TEXT NAME=NOME>
<INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>
Request007.asp
<%
qtBytes = Request.TotalBytes
cadeia = Request.BinaryRead(qtBytes)
Response.BinaryWrite cadeia
%>

Pgina [ 16 ]

****

4
****

Objeto
Application

Colees
Contents
Contm as variveis e constantes com escopo de aplicao.
SINTAXE: Application.Contents(item)
Application001.asp
<%
Application.Lock
Application("Nome") = "Agnaldo"
Application("Sobrenome") = "Santos"
Application("Sexo") = "M"
Application("Nascimento") = #Sep, 12, 1966#
Set Application("objRS") = CreateObject("ADODB.RecordSet")
Application.Unlock
Response.Write Month(Application.Contents("Nascimento")) & " <i>(Ms do
A item ""Nascimento"")</i><BR/><BR/>"
Response.Write Application.Contents("NOME") & " <i>(item ""NOME"")
A </i><BR/><BR/>"
Response.Write Application.Contents(1) & " <i>(primeiro campo)
A </i><BR/><BR/>"
For Each item in Application.Contents
If IsObject(Application.Contents(Item)) Then
Response.Write item & " um objeto<BR>"
Else
Response.Write item & " => " & Application.Contents(Item) & "<BR>"
End If
Next
%>

StaticObjects
Contm os objetos declarados como <OBJECT> do HTML, que tenham escopo
de aplicao.
SINTAXE: Application.StaticObjects(item)
global.asa
<OBJECT RUNAT=Server SCOPE=Application ID=objMyInfo PROGID="MSWC.MyInfo">
</OBJECT>
<OBJECT RUNAT=Server SCOPE=Application ID=objConexao
A PROGID="ADODB.Connection">
</OBJECT>
<OBJECT RUNAT=Server SCOPE=Application ID=objRS PROGID="ADODB.RecordSet">
</OBJECT>
Application002.asp
<%
For Each item in Application.StaticObjects

Pgina [ 18 ]

Response.Write item & "<BR/>"


Next
%>

Mtodos
Contents.Remove
Usado para remover um item especfico da coleo Contents.
SINTAXE: Application.Contents.Remove(item)
Application003.asp
<%
Application.Lock
Application("Nome") = "Agnaldo"
Application("Sobrenome") = "Santos"
Application("Sexo") = "M"
Application("Nascimento") = #Sep, 12, 1966#
Set Application("objRS") = CreateObject("ADODB.RecordSet")
Application.Unlock
Application.Contents.Remove(1)
Application.Contents.Remove("Sobrenome")
For Each item in Application.Contents
If IsObject(Application.Contents(Item)) Then
Response.Write item & " um objeto<BR>"
Else
Response.Write item & "=" & Application.Contents(Item) & "<BR>"
End If
Next
%>

Contents.RemoveAll
Remove todos os elementos da coleo Contents.
SINTAXE: Application.Contents.RemoveAll
Application004.asp
<%
Application.Lock
Application("Nome") = "Agnaldo"
Application("Sobrenome") = "Santos"
Application("Sexo") = "M"
Application("Nascimento") = #Sep, 12, 1966#
Set Application("objRS") = CreateObject("ADODB.RecordSet")
Application.Unlock
Application.Contents.RemoveAll
For Each item in Application.Contents

Pgina [ 19 ]

If IsObject(Application.Contents(Item)) Then
Response.Write item & " um objeto<BR>"
Else
Response.Write item & "=" & Application.Contents(Item) & "<BR>"
End If
Next
%>

Lock
Trava o acesso de outros usurios ao objeto Application.
SINTAXE: Application.Lock
Application005.asp
<%
Application.Lock
Application("Nome") = "Agnaldo"
Application("Sobrenome") = "Santos"
Application("Sexo") = "M"
Application("Nascimento") = #Sep, 12, 1966#
Set Application("objRS") = CreateObject("ADODB.RecordSet")
Application.Unlock
%>

Unlock
Libera o acesso de outros usurios ao objeto Application.
SINTAXE: Application.UnLock
Application006.asp
<%
Application.Lock
Application("Nome") = "Agnaldo"
Application("Sobrenome") = "Santos"
Application("Sexo") = "M"
Application("Nascimento") = #Sep, 12, 1966#
Set Application("objRS") = CreateObject("ADODB.RecordSet")
Application.Unlock
%>

Eventos
OnStart
Ocorre esse evento quando o primeiro usurio entra no site.
SINTAXE: Application_OnStart
global.asa
<script language=vbscript runat=server>
Sub Application_OnEnd()

Pgina [ 20 ]

Application("qtUsuario") = nothing
End Sub
Sub Application_OnStart()
Application("qtUsuario") = 0
End Sub
</script>
Application007.asp
<%
Application.Lock
Application("qtUsuario") = Application("qtUsuario") + 1
Application.Unlock
Response.Write "Voc o " & Application.Contents("qtUsuario") & "&ordm;
A usurio a acessar essa pgina<BR/>"
%>

OnEnd
Ocorre quando a aplicao finalizada. Isso no ocorre enquanto existirem
usurios conectados ao servidor ou at o servio ser restartado.
SINTAXE: Application_OnEnd
global.asa
<script language=vbscript runat=server>
Sub Application_OnEnd()
Response.AppendToLog("Aplicao finalizada s " & Now())
End Sub
Sub Application_OnStart()
Application("qtUsuario") = 0
End Sub
</script>
Application008.asp
<%
Application.Lock
Application("qtUsuario") = Application("qtUsuario") + 1
Application.Unlock
Response.Write "Voc o " & Application.Contents("qtUsuario") & "&ordm;
A usurio a acessar essa pgina<BR/>"
%>

Pgina [ 21 ]

****

5
****

Objeto
Session

Propriedades
CodePage
Define o cdigo de pgina usado para apresentar os dados no browser.
SINTAXE: Session.CodePage = codigo
Session001.asp
<%
codigo = Session.CodePage
Response.Write codigo
Response.Write "<BR/>aeiou<BR/><BR/>"
Session.CodePage = 437
Response.Write Session.CodePage
Response.Write "<BR/>aeiou<BR/>"
Session.CodePage = codigo
%>

LCID
Define o LocaleID usado para apresentar os dados no cliente.
SINTAXE: Session.LCID
Session002.asp
<%
lcID = Session.LCID
Response.Write lcID
Response.Write "<BR/>" & Now() & "<BR/><BR/>"
Session.LCID = 2057
Response.Write Session.lcID
Response.Write "<BR/>" & Now() & "<BR/>"
Session.LCID = lcID
%>

SessionID
Retorna o cdigo da sesso do usurio.
SINTAXE: Session.SessionID
Session003.asp
<%
Response.Write Session.SessionID
%>

Timeout
Pgina [ 23 ]

Define o tempo mximo em que a sesso sobrevive sem ter solicitaes ao


servidor. O valor pode ser maior que o setado no Internet Information Server,
no menor.
SINTAXE: Session.Timeout tempoEmMinutos
Session004.asp
<%
Response.Write Session.Timeout
Session.Timeout = 5
%>

Colees
Contents
Contm as variveis e constantes com escopo de sesso.
SINTAXE: Session.Contents(item)
Session005.asp
<%
Session.Lock
Session("Nome") = "Agnaldo"
Session("Sobrenome") = "Santos"
Session("Sexo") = "M"
Session("Nascimento") = #Sep, 12, 1966#
Set Session("objRS") = CreateObject("ADODB.RecordSet")
Session.Unlock
Response.Write Month(Session.Contents("Nascimento")) & " <i>(Ms do
A item ""Nascimento"")</i><BR/><BR/>"
Response.Write Session.Contents("NOME") & " <i>(item ""NOME"")
A </i><BR/><BR/>"
Response.Write Session.Contents(1) & " <i>(primeiro campo)
A </i><BR/><BR/>"
For Each item in Session.Contents
If IsObject(Session.Contents(Item)) Then
Response.Write item & " um objeto<BR>"
Else
Response.Write item & " => " & Session.Contents(Item) & "<BR>"
End If
Next
%>

StaticObjects
Contm os objetos declarados como <OBJECT> do HTML, que tenham escopo
de sesso.
SINTAXE: Session.StaticObjects(item)
global.asa
<OBJECT RUNAT=Server SCOPE=Session ID=objMyInfo PROGID="MSWC.MyInfo">

Pgina [ 24 ]

</OBJECT>
<OBJECT RUNAT=Server SCOPE=Session ID=objConexao
A PROGID="ADODB.Connection">
</OBJECT>
<OBJECT RUNAT=Server SCOPE=Session ID=objRS PROGID="ADODB.RecordSet">
</OBJECT>
Session006.asp
<%
For Each item in Session.StaticObjects
Response.Write item & "<BR/>"
Next
%>
</script>

Mtodos
Abandon
Abandona a sesso e limpa o contedo das variveis, aps o trmino do
processamento da pgina .
SINTAXE: Session.Abandon
Session007.asp
<%
Session("variavel") = 100
Response.Write Session.SessionID & "<BR/>"
Response.Write Session("variavel") & "<BR/><BR/>"
Session.Abandon
Response.Write Session.SessionID & "<BR/>"
Response.Write Session("variavel") & "<BR/>"
%>
Session008.asp
<%
Session("variavel") = 100
Session.Abandon
Response.Redirect "Session008a.asp"
%>
Session008a.asp
<%
Response.Write Session.SessionID & "<BR/>"
Response.Write Session("variavel") & "<BR/><BR/>"
%>

Contents.Remove
Remove um elemento da coleo Session.Contents.

Pgina [ 25 ]

SINTAXE: Session.Contents.Remove(item)
Session009.asp
<%
Session("Nome") = "Agnaldo"
Session("Sobrenome") = "Santos"
Session("Sexo") = "M"
Session("Nascimento") = #Sep, 12, 1966#
Set Session("objRS") = CreateObject("ADODB.RecordSet")
Session.Contents.Remove(1)
Session.Contents.Remove("Sobrenome")
For Each item in Session.Contents
If IsObject(Session.Contents(Item)) Then
Response.Write item & " um objeto<BR>"
Else
Response.Write item & "=" & Session.Contents(Item) & "<BR>"
End If
Next
%>

Contents.RemoveAll
Remove todos os elementos da coleo Session.Contents.
SINTAXE: Session.Contents.RemoveAll
Session010.asp
<%
Session("Nome") = "Agnaldo"
Session("Sobrenome") = "Santos"
Session("Sexo") = "M"
Session("Nascimento") = #Sep, 12, 1966#
Set Session("objRS") = CreateObject("ADODB.RecordSet")
Session.Contents.RemoveAll
For Each item in Session.Contents
If IsObject(Session.Contents(Item)) Then
Response.Write item & " um objeto<BR>"
Else
Response.Write item & "=" & Session.Contents(Item) & "<BR>"
End If
Next
%>

Eventos
OnStart

chamado no incio de cada sesso de usurio.


SINTAXE: Session_OnStart
global.asa
<script language=vbscript runat=server>
Sub Application_OnEnd()

Pgina [ 26 ]

Response.AppendToLog("Aplicao finalizada s " & Now())


End Sub
Sub Application_OnStart()
Application("qtUsuario") = 0
End Sub
Sub Session_OnEnd()
Application.Lock
Application("qtUsuario") = Application("qtUsuario") - 1
Application.Unlock
End Sub
Sub Application_OnStart()
Application.Lock
Application("qtUsuario") = Application("qtUsuario") + 1
Application.Unlock
End Sub
</script>
Session011.asp
<%
Response.Write "Existem " & Application.Contents("qtUsuario")
A & " usurios conectados nesse momento<BR/>"
%>

OnEnd
disparado ao final da sesso do usurio.
SINTAXE: Session_OnEnd
global.asa
<script language=vbscript runat=server>
Sub Application_OnEnd()
Response.AppendToLog("Aplicao finalizada s " & Now())
End Sub
Sub Application_OnStart()
Application("qtUsuario") = 0
End Sub
Sub Session_OnEnd()
Application.Lock
Application("qtUsuario") = Application("qtUsuario") - 1
Application.Unlock
End Sub
Sub Application_OnStart()
Application.Lock
Application("qtUsuario") = Application("qtUsuario") + 1
Application.Unlock
End Sub
</script>
Session012.asp
<%
Response.Write "Existem " & Application.Contents("qtUsuario")
A & " usurios conectados nesse momento<BR/>"
%>

Pgina [ 27 ]

****

6
****

Objeto
Server

Propriedades
ScriptTimeout
Define o tempo em segundos que uma pgina pode esperar pela exzecuo
de um script.
SINTAXE: Server.ScriptTimeout = tempoEmSegundos
Server001.asp
<%
Response.Write Server.ScriptTimeout & "<BR/>"
Server.ScriptTimeout = 15
Response.Write Server.ScriptTimeout & "<BR/>"
%>

Mtodos
CreateObject
Cria um objeto.
SINTAXE: Server.CreateObject(Objeto.Classe)
Server002.asp
<%
Set objRS = Server.CreateObject("ADODB.RecordSet")
Response.Write IsObject(objRS)
%>

Execute
Executa uma outra pgina e, ao terminar o processamento, volta primeira,
no ponto em que tinha sido desviada. No se usa passar parmetros pois
eles j esto disponveis automaticamente.
SINTAXE: Server.Execute URLSemQueryString
Server003.asp
<%
Response.Write "ANTES<BR/>"
Response.Write Server.Execute("Server003a.asp")
Response.Write "DEPOIS<BR/>"
%>
Server003a.asp
<%
Response.Write "Nmero de sesso do usurio " & Session.SessionID
%>

GetLastError
Obtm o ltimo cdigo de erro retornado por uma operao qualquer.
Pgina [ 29 ]

SINTAXE: Server.GetLastError
Server004.asp
<HTML>
<BODY>
<CODE>
<%
Dim objErrorInfo
Set objErrorInfo = Server.GetLastError
Response.Write("Cdigo do Erro ASP
Response.Write("Descrio ASP.....
A "<BR/>"
Response.Write("Categoria.........
Response.Write("Coluna............
Response.Write("Descrio.........
A "<BR/>"
Response.Write("Arquivo...........
Response.Write("Linha.............
Response.Write("Nmero............
Response.Write("Origem............

" & objErrorInfo.ASPCode) & "<BR/>"


" & objErrorInfo.ASPDescription) &
" & objErrorInfo.Category) & "<BR/>"
" & objErrorInfo.Column) & "<BR/>"
" & objErrorInfo.Description) &
"
"
"
"

&
&
&
&

objErrorInfo.File) &
objErrorInfo.Line) &
objErrorInfo.Number)
objErrorInfo.Source)

"<BR/>"
"<BR/>"
& "<BR/>"
& "<BR/>"

%>
</CODE>
</BODY>
</HTML>

HTMLEncode
Apresenta o cdigo HTML, sem interpret-lo.
SINTAXE: Server.HTMLEncode(string)
Server005.asp
<%
Response.Write "<table width=100% border=1>"
For i = 1 To 10
Response.Write "<tr>"
For j = 1 To 10
Response.Write "<td align=center>" & i*j & "</td>"
Next
Response.Write "</tr>"
Next
Response.Write "</table>"
Response.Write "<p><b>Esse o cdigo que gera a tabela acima:</b></p>"
Response.Write Server.HTMLEncode("Response.Write ""<table width=100%
A border=1>""") & "<br>"
Response.Write Server.HTMLEncode("For i = 1 To 10") & "<br>"
Response.Write Server.HTMLEncode(" Response.Write ""<tr>""") & "<br>"
Response.Write Server.HTMLEncode(" For j = 1 To 10") & "<br>"
Response.Write Server.HTMLEncode("
Response.Write ""
A <td align=center>"" & i*j & ""</td>""") & "<br>"

Pgina [ 30 ]

Response.Write Server.HTMLEncode(" Next") & "<br>"


Response.Write Server.HTMLEncode(" Response.Write ""</tr>""") & "<br>"
Response.Write Server.HTMLEncode("Next") & "<br>"
Response.Write Server.HTMLEncode("Response.Write ""</table>""") & "<br>"
%>

MapPath
Retorna o caminho fsico de um arquivo qualquer, a partir de seu endereo
lgico.
SINTAXE: Server.MapPath(arquivo)
Server006.asp
<%
Response.Write Server.MapPath("Server006.asp")
%>

Transfer
Desvia o processamento para outra pgina, definitivamente.
SINTAXE: Server.Tranfer(URL)
Server007.asp
<%
Response.Write "ANTES<BR/>"
Session("cidade") = "So Paulo"
Server.Transfer("Server007a.asp")
Response.Write "DEPOIS<BR/>"
%>
Server007a.asp
<%
Response.Write "Cidade: " & Session("cidade")
%>

URLEncode
Codifica o URL para um formato padro, entendido por qualquer browser.
SINTAXE: Server.URLEncode
Server008.asp
<%
Response.Write Server.URLEncode("http://www.agnaldo.eti.br")
%>

Pgina [ 31 ]

****

7
****

Objeto
ObjectContext

Mtodos
SetAbort
Usado em para disparar um evento abort. Indica que uma transao falhou.
SINTAXE: ObjectContext.SetAbort
SetComplete
Usado para disparar um evento commit. Indica que uma transao teve
sucesso.
SINTAXE: ObjectContext.SetAbort

Eventos
OnTransactionAbort
Evento disparado por um SetAbort.
OnTransactionComplete
Evento disparado por um SetComplete.

Pgina [ 33 ]

****

8
****

Objeto
ASPError

Propriedades
ASPCode
Retorna o cdigo de erro retornado pelo IIS.
ASPDescription
Retorna a descrio detalhada do erro do IIS.
Category
Retorna a origem do erro, isto , se ele foi gerado pelo IIS, por um componente
ou pela linguagem de script.
Column
Retorna a coluna do arquivo ASP em que o erro ocorreu.
Description
Retorna uma descrio menos detalhada do erro.
File
Retorna o nome do arquivo que gerou o erro.
Line
Linha do arquivo onde tem o erro.
Number
Retorna o cdigo do erro de um componente COM.
Source
Retorna uma string contendo a linha que gerou o erro, se disponvel.

Pgina [ 35 ]

ndice
Sobre a ASP
ASP gera pginas que so vistas em qualquer browser ......... 3
ASP no tem uma linguagem de programao embutida ........... 4

Response - Propriedades
Buffer ......................................................
CacheControl ................................................
Charset .....................................................
ContentType .................................................
Expires .....................................................
ExpiresAbsolute .............................................
IsClientConnected ...........................................
PICS ........................................................
Status ......................................................

6
6
6
7
7
7
8
8
8

Response - Colees
Cookies ..................................................... 9

Response - Mtodos
AddHeader ................................................... 9
AppendToLog ................................................. 9
BinaryWrite ................................................ 10
Clear ...................................................... 10
End ........................................................ 10
Flush ...................................................... 11
Redirect ................................................... 11
Write ...................................................... 11

Request - Propriedades
TotalBytes ................................................. 13

Pgina [ 36 ]

Request - Colees
ClientCertificate ..........................................
Cookies ....................................................
Form .......................................................
QueryString ................................................
ServerVariables ............................................

13
13
14
14
15

Request - Mtodos
BinaryRead ................................................. 16

Application - Colees
Contents ................................................... 18
StaticObjects .............................................. 18

Application - Mtodos
Contents.Remove ............................................
Contents.RemoveAll .........................................
Lock .......................................................
Unlock .....................................................

19
19
20
20

Application - Eventos
OnStart .................................................... 20
OnEnd ...................................................... 21

Session - Propriedades
CodePage ...................................................
LCID .......................................................
SessionID ..................................................
Timeout ....................................................

23
23
23
23

Session - Colees
Contents ................................................... 24
StaticObjects .............................................. 24
Pgina [ 37 ]

Session - Mtodos
Abandon .................................................... 25
Contents.Remove ............................................ 25
Contents.RemoveAll ......................................... 26

Session - Eventos
OnStart .................................................... 26
OnEnd ...................................................... 27

Server - Propriedades
ScriptTimeout .............................................. 29

Server - Mtodos
CreateObject ...............................................
Execute ....................................................
GetLastError ...............................................
HTMLEncode .................................................
MapPath ....................................................
Transfer ...................................................
URLEncode ..................................................

29
29
29
30
31
31
31

ObjectContext - Mtodos
SetAbort ................................................... 33
SetComplete ................................................ 33

ObjectContext - Eventos
OnTransactionAbort ......................................... 33
OnTransactionComplete ...................................... 33

ASPError - Propriedades
ASPCode .................................................... 35
Pgina [ 38 ]

ASPDescription .............................................
Category ...................................................
Column .....................................................
Description ................................................
File .......................................................
Line .......................................................
Number .....................................................
Source .....................................................

35
35
35
35
35
35
35
35

Pgina [ 39 ]

****

A
****

Exerccios
Extras

Exerccios Propostos
01 - Controle de banners
Usando o AdRotator, o aluno dever fazer um controle dos clicks e dos
pageviews referentes a um grupo de n banners.
02 - Envio de e-mails
Usando o CDONTS, o aluno dever fazer um sistema de envio de mails.
03 - Controle de visitas
Usando o FileSystem, o aluno dever fazer um controle de visitas permanente.
04 - Controle de Erros
O aluno dever criar uma pgina de erros personalizada.
05 - Controle de Enquetes
O aluno dever criar um sistema gerenciador de enquetes.

Pgina [ 41 ]

Vous aimerez peut-être aussi