Académique Documents
Professionnel Documents
Culture Documents
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 ]
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 ]
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 ]
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 " </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 ]
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") & "º
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") & "º
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 ]
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
Pgina [ 26 ]
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.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 ]
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 ]