asp.pdf
TRANSCRIPT
-
* * * *
1* * * *
Introduo
-
Pgina [ 3 ]
Sobre a ASPNo incio dos anos 90, quando a Internet ainda era tmida e no se viam suaspossibilidades comerciais, no havia porque se colocar os negcios da empresana 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 noservidor, foi criado o CGI, desenvolvido em linguagens compiladas como C,VB ou Delphi, em linguagens interpretadas, como o Perl ou Rexx ou emlinguagens de shell script do Unix.
Em 1996 a Microsoft incorporou o ISAPI ao seu IIS (Internet InformationServer). Acompanhando esse passo, a Microsoft encorajou os desenvolvedoresa usar o IDC (Internet Database Connector), que era um novo meio de seligar as pginas Web a bancos de dados, atravs do ODBC (Open DatabaseConnectivity).
Aproximadamente em 1997, o ASP apareceu, em sua primeira verso, comoum 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 Microsoftpara pginas Web dinmicas e interativas. Uma pgina ASP uma pginaHTML com comandos de script que so interpretados no servidor antes de apgina ser enviada ao browser do cliente. Isso explica a origem do termoserver-side script.
ASP gera pginas que so vistas em qualquer browser
A pgina ASP interpretada no servidor e envia ao browser do cliente oHTML resultante. Por isso todo e qualquer browser pode receber os dadosenviados por ASP.
Processamento em uma pgina esttica:
-
Pgina [ 4 ]
Processamento em uma pgina ASP:
ASP no tem uma linguagem de programao embutida
A especificao (ou padro, como alguns chamam) necessita de umalinguagem de scripts, j que possui apenas objetos. Pode ser qualquer uma,pois o servidor Web (IIS - Internet Information Server) pode ser configuradopara aceitar linguagens diferentes do padro, que o vbscript. A segundaopo o javascript. O padro vbscript foi definido pela Microsoft por seruma linguagem desenvolvida por ela mesma.
-
* * * *
2* * * *
ObjetoResponse
-
Pgina [ 6 ]
PropriedadesBuffer
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
Response002.asp
Response003.asp
CacheControl
Permite ao proxy a criao de cache das pginas. Se for setado o valorPublic (no se esquea das aspas), o proxy far cache. Se for definido ovalor Private o cache das pginas no ser usado. Pode-se usar oResponse.Expires ou Response.ExpiresAbsolute para definir o tempode vida das pginas em cache.
SINTAXE: Response.CacheControl = string
Response004.asp
Charset
Adiciona ao Header da pgina o uma string que contm o charset a ser
-
Pgina [ 7 ]
utilizado.SINTAXE: Response.CharSet = string
Response005.asp
ContentType
Define o formato do contedo da pgina.SINTAXE: Response.contentType = string
Response006.asp
24
56
Expires
Determina qual o tempo de vida do cache da pgina, em minutos.SINTAXE: Response.Expires = tempo
Response007.asp
Response008.asp
ExpiresAbsolute
Define em qual data a pgina vai ter seu cache expirado. Deve ser informadaa data, com ano de quatro dgitos e dia de vinte e quatro horas.
SINTAXE: Response.ExpiresAbsolute = dataHora
Response009.asp
-
Pgina [ 8 ]
Response.Write Now()%>
IsClientConnected
Verifica se o browser ainda est conectado ao servidor, desde a ltimoResponse.Write.
SINTAXE: Response.IsClientConnected
Response010.asp
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
Status
Define o status retornado pelo servidor. Voc deve passar um cdigo com 3dgitos, seguido de uma breve descrio.
SINTAXE: Response.Status = codigo
-
Pgina [ 9 ]
Response012.asp
Voc acessou a pgina. Ento seu IP 200.206.236.15
ColeesCookies
Coleo de tens de um cookie.SINTAXE: Response.Cookies(nome)(item) = valor
Response013.asp
MtodosAddHeader
Adiciona uma nova chave ao header da pgina.SINTAXE: Response.AddHeader nome, valor
Response014.asp
AppendToLog
Acrescenta uma nova linha ao log do IIS.SINTAXE: Response.AppendToLog(stringSemVirgulas)
-
Pgina [ 10 ]
Response015.asp
BinaryWrite
Escreve valores binrios no cliente. til, por exemplo, quando se temimagens armazenadas em banco de dados e temos a necessidade de envi-las ao browser cliente.
SINTAXE: Response.BinaryWrite dados
Response016.htm
Response016.asp
Clear
Limpa o buffer. Se o valor de Response.Buffer for setado como False, ocorreum erro de run-time.
SINTAXE: Response.Clear
Response017.asp
End
Interrompe o processamento e envia todo o contedo que est no bufferpara o cliente.
SINTAXE: Response.End
Response018.asp
-
Pgina [ 11 ]
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
Redirect
Conecta o browser a outra pgina.SINTAXE: Response.Redirect URL
Response020.asp
Response021.asp
Write
Envia ao browser uma cadeia de caracteres.SINTAXE: Response.Write string
Response022.asp
-
* * * *
3* * * *
ObjetoRequest
-
Pgina [ 13 ]
PropriedadesTotalBytes
Informa a quantidade de bytes enviada ao cliente pelo servidor.SINTAXE: Request.TotalBytes
Request001.htm
Response001.asp
ColeesClientCertificate
Usado com pginas que usem SSL (Secure Socket Layers). Informa dados arespeito do certificado de segurana digital.
SINTAXE: Request.ClientCertificate(item)
Request002.asp
Cookies
O variant no foi inicializado.SINTAXE: Request.Cookies(nome)
ouRequest.Cookies(nome)(item)
Request003.asp
-
Pgina [ 14 ]
Response.Write Request.Cookies("comida") & " (todos os elementos doA cookie)"
Response.Write Request.Cookies("comida")("principal") & " (campoA ""principal"")"
Response.Write Request.Cookies("comida")(1) & " (primeiro campo)A "
For Each item in Request.Cookies("comida")Response.Write item & " - " & Request.Cookies("comida")(item) &A ""
Next%>
Form
Coleo que contm todos os campos passados por formulrio, usando omtodo POST.
SINTAXE: Request.Form(item)
Request004.htm
Nome.........: Idade........: Nacionalidade:
Request004.asp
QueryString
Coleo que contm todos os campos passados por formulrio, usando omtodo GET ou passados como parte do URL.
SINTAXE: Request.QueryString(item)
-
Pgina [ 15 ]
Request005.htm
Nome.........: Idade........: Nacionalidade:
Request005.asp
ServerVariables
Coleo que contm informaes a respeito do servidor.SINTAXE: Request.ServerVariables(item)
Request006.asp
-
Pgina [ 16 ]
MtodosBinaryRead
L uma seqncia de bytes na forma binria.SINTAXE: Request.BinaryRead(qtdBytes)
Request007.htm
Request007.asp
-
* * * *
4* * * *
ObjetoApplication
-
Pgina [ 18 ]
ColeesContents
Contm as variveis e constantes com escopo de aplicao.SINTAXE: Application.Contents(item)
Application001.asp
StaticObjects
Contm os objetos declarados como do HTML, que tenham escopode aplicao.
SINTAXE: Application.StaticObjects(item)
global.asa
Application002.asp
-
Pgina [ 19 ]
Response.Write item & ""Next
%>
MtodosContents.Remove
Usado para remover um item especfico da coleo Contents.SINTAXE: Application.Contents.Remove(item)
Application003.asp
Contents.RemoveAll
Remove todos os elementos da coleo Contents.SINTAXE: Application.Contents.RemoveAll
Application004.asp
-
Pgina [ 20 ]
If IsObject(Application.Contents(Item)) ThenResponse.Write item & " um objeto"
ElseResponse.Write item & "=" & Application.Contents(Item) & ""
End IfNext
%>
Lock
Trava o acesso de outros usurios ao objeto Application.SINTAXE: Application.Lock
Application005.asp
Unlock
Libera o acesso de outros usurios ao objeto Application.SINTAXE: Application.UnLock
Application006.asp
EventosOnStart
Ocorre esse evento quando o primeiro usurio entra no site.SINTAXE: Application_OnStart
global.asa
Sub Application_OnEnd()
-
Pgina [ 21 ]
Application("qtUsuario") = nothingEnd Sub
Sub Application_OnStart() Application("qtUsuario") = 0
End Sub
Application007.asp
OnEnd
Ocorre quando a aplicao finalizada. Isso no ocorre enquanto existiremusurios conectados ao servidor ou at o servio ser restartado.
SINTAXE: Application_OnEnd
global.asa
Sub Application_OnEnd() Response.AppendToLog("Aplicao finalizada s " & Now())
End Sub
Sub Application_OnStart() Application("qtUsuario") = 0
End Sub
Application008.asp
-
* * * *
5* * * *
ObjetoSession
-
Pgina [ 23 ]
PropriedadesCodePage
Define o cdigo de pgina usado para apresentar os dados no browser.SINTAXE: Session.CodePage = codigo
Session001.asp
LCID
Define o LocaleID usado para apresentar os dados no cliente.SINTAXE: Session.LCID
Session002.asp
SessionID
Retorna o cdigo da sesso do usurio.SINTAXE: Session.SessionID
Session003.asp
Timeout
-
Pgina [ 24 ]
Define o tempo mximo em que a sesso sobrevive sem ter solicitaes aoservidor. O valor pode ser maior que o setado no Internet Information Server,no menor.
SINTAXE: Session.Timeout tempoEmMinutos
Session004.asp
ColeesContents
Contm as variveis e constantes com escopo de sesso.SINTAXE: Session.Contents(item)
Session005.asp
StaticObjects
Contm os objetos declarados como do HTML, que tenham escopode sesso.
SINTAXE: Session.StaticObjects(item)
global.asa
-
Pgina [ 25 ]
Session006.asp
MtodosAbandon
Abandona a sesso e limpa o contedo das variveis, aps o trmino doprocessamento da pgina .
SINTAXE: Session.Abandon
Session007.asp
Session008.asp
Session008a.asp
Contents.Remove
Remove um elemento da coleo Session.Contents.
-
Pgina [ 26 ]
SINTAXE: Session.Contents.Remove(item)
Session009.asp
Contents.RemoveAll
Remove todos os elementos da coleo Session.Contents.SINTAXE: Session.Contents.RemoveAll
Session010.asp
EventosOnStart
chamado no incio de cada sesso de usurio.SINTAXE: Session_OnStart
global.asa
Sub Application_OnEnd()
-
Pgina [ 27 ]
Response.AppendToLog("Aplicao finalizada s " & Now())End Sub
Sub Application_OnStart() Application("qtUsuario") = 0
End Sub
Sub Session_OnEnd()Application.LockApplication("qtUsuario") = Application("qtUsuario") - 1Application.Unlock
End Sub
Sub Application_OnStart()Application.LockApplication("qtUsuario") = Application("qtUsuario") + 1Application.Unlock
End Sub
Session011.asp
OnEnd
disparado ao final da sesso do usurio.SINTAXE: Session_OnEnd
global.asa
Sub Application_OnEnd() Response.AppendToLog("Aplicao finalizada s " & Now())
End Sub
Sub Application_OnStart() Application("qtUsuario") = 0
End Sub
Sub Session_OnEnd()Application.LockApplication("qtUsuario") = Application("qtUsuario") - 1Application.Unlock
End Sub
Sub Application_OnStart()Application.LockApplication("qtUsuario") = Application("qtUsuario") + 1Application.Unlock
End Sub
Session012.asp
-
* * * *
6* * * *
ObjetoServer
-
Pgina [ 29 ]
PropriedadesScriptTimeout
Define o tempo em segundos que uma pgina pode esperar pela exzecuode um script.
SINTAXE: Server.ScriptTimeout = tempoEmSegundos
Server001.asp
MtodosCreateObject
Cria um objeto.SINTAXE: Server.CreateObject(Objeto.Classe)
Server002.asp
Execute
Executa uma outra pgina e, ao terminar o processamento, volta primeira,no ponto em que tinha sido desviada. No se usa passar parmetros poiseles j esto disponveis automaticamente.
SINTAXE: Server.Execute URLSemQueryString
Server003.asp
Server003a.asp
GetLastError
Obtm o ltimo cdigo de erro retornado por uma operao qualquer.
-
Pgina [ 30 ]
SINTAXE: Server.GetLastError
Server004.asp
HTMLEncode
Apresenta o cdigo HTML, sem interpret-lo.SINTAXE: Server.HTMLEncode(string)
Server005.asp
-
Pgina [ 31 ]
Response.Write Server.HTMLEncode(" Next") & ""
Response.Write Server.HTMLEncode(" Response.Write """"") & ""Response.Write Server.HTMLEncode("Next") & ""
Response.Write Server.HTMLEncode("Response.Write """"") & ""%>
MapPath
Retorna o caminho fsico de um arquivo qualquer, a partir de seu endereolgico.
SINTAXE: Server.MapPath(arquivo)
Server006.asp
Transfer
Desvia o processamento para outra pgina, definitivamente.SINTAXE: Server.Tranfer(URL)
Server007.asp
Server007a.asp
URLEncode
Codifica o URL para um formato padro, entendido por qualquer browser.SINTAXE: Server.URLEncode
Server008.asp
-
* * * *
7* * * *
ObjetoObjectContext
-
Pgina [ 33 ]
MtodosSetAbort
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 tevesucesso.
SINTAXE: ObjectContext.SetAbort
EventosOnTransactionAbort
Evento disparado por um SetAbort.
OnTransactionComplete
Evento disparado por um SetComplete.
-
* * * *
8* * * *
ObjetoASPError
-
Pgina [ 35 ]
PropriedadesASPCode
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 componenteou 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 [ 36 ]
ndice
Sobre a ASPASP gera pginas que so vistas em qualquer browser ......... 3ASP no tem uma linguagem de programao embutida ........... 4
Response - PropriedadesBuffer ...................................................... 6CacheControl ................................................ 6Charset ..................................................... 6ContentType ................................................. 7Expires ..................................................... 7ExpiresAbsolute ............................................. 7IsClientConnected ........................................... 8PICS ........................................................ 8Status ...................................................... 8
Response - ColeesCookies ..................................................... 9
Response - MtodosAddHeader ................................................... 9AppendToLog ................................................. 9BinaryWrite ................................................ 10Clear ...................................................... 10End ........................................................ 10Flush ...................................................... 11Redirect ................................................... 11Write ...................................................... 11
Request - PropriedadesTotalBytes ................................................. 13
-
Pgina [ 37 ]
Request - ColeesClientCertificate .......................................... 13Cookies .................................................... 13Form ....................................................... 14QueryString ................................................ 14ServerVariables ............................................ 15
Request - MtodosBinaryRead ................................................. 16
Application - ColeesContents ................................................... 18StaticObjects .............................................. 18
Application - MtodosContents.Remove ............................................ 19Contents.RemoveAll ......................................... 19Lock ....................................................... 20Unlock ..................................................... 20
Application - EventosOnStart .................................................... 20OnEnd ...................................................... 21
Session - PropriedadesCodePage ................................................... 23LCID ....................................................... 23SessionID .................................................. 23Timeout .................................................... 23
Session - ColeesContents ................................................... 24StaticObjects .............................................. 24
-
Pgina [ 38 ]
Session - MtodosAbandon .................................................... 25Contents.Remove ............................................ 25Contents.RemoveAll ......................................... 26
Session - EventosOnStart .................................................... 26OnEnd ...................................................... 27
Server - PropriedadesScriptTimeout .............................................. 29
Server - MtodosCreateObject ............................................... 29Execute .................................................... 29GetLastError ............................................... 29HTMLEncode ................................................. 30MapPath .................................................... 31Transfer ................................................... 31URLEncode .................................................. 31
ObjectContext - MtodosSetAbort ................................................... 33SetComplete ................................................ 33
ObjectContext - EventosOnTransactionAbort ......................................... 33OnTransactionComplete ...................................... 33
ASPError - PropriedadesASPCode .................................................... 35
-
Pgina [ 39 ]
ASPDescription ............................................. 35Category ................................................... 35Column ..................................................... 35Description ................................................ 35File ....................................................... 35Line ....................................................... 35Number ..................................................... 35Source ..................................................... 35
-
* * * *
A* * * *
ExercciosExtras
-
Pgina [ 41 ]
Exerccios Propostos01 - Controle de banners
Usando o AdRotator, o aluno dever fazer um controle dos clicks e dospageviews 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.