asp.pdf

40
* * * * 1 * * * * Introdução

Upload: daniel-pettini

Post on 17-Nov-2015

214 views

Category:

Documents


1 download

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.