ASP - Curso Completo

Embed Size (px)

Citation preview

  • 7/23/2019 ASP - Curso Completo

    1/121

    Universidade do Sagrado CoraoCentro de Cincias Exatas e Naturais

    Apostila de ASP(Active Server Pages)

    Prof. Ms. Ronaldo Martins da Costa

    Universidade do Sagrado Corao USC http//:www.usc.brCentro de Cincias Exatas e Naturais

  • 7/23/2019 ASP - Curso Completo

    2/121

    ndice

    1. Introduo..................................................................................................................1

    2. O Internet Information Server (IIS)............................................................................5

    3. Instalando o Internet Information Server no Windows XP.......................................15

    4. Formulrios e ASP...................................................................................................28

    5. O que VBScript.....................................................................................................31

    6. Variveis..................................................................................................................39

    7. Operadores..............................................................................................................50

    8. Comandos bsicos do VBSript................................................................................61

    9. Os objetos do ASP..................................................................................................74

    10. Open DataBase Conectivity(ODBC).......................................................................85

    11. Acessando Banco de Dados...................................................................................89

    12. Segurana...............................................................................................................96Apndice A Instalao do banco MySql...................................................................103

    Apndice B Instalao do MySql front verso 2.5....................................................109

    Apndice C Instalao do MySql ODBC..................................................................115

  • 7/23/2019 ASP - Curso Completo

    3/121

    Lista de Figuras

    Figura 1.1: Forma de funcionamento de aplicaes ASP...............................................3

    Figura 2.1: Apresentao do Option Packdo Windows NT............................................5

    Figura 2.2: Solicitao do tipo de instalao a ser executado........................................6Figura 2.3: Seleo dos componentes a serem instalados.............................................6

    Figura 2.4: Seleo das pastas para a instalao...........................................................7

    Figura 2.5: Management Console...................................................................................8

    Figura 2.6: Descrio do sitea ser criado.......................................................................8

    Figura 2.7: IP da mquina e a porta para WEB...............................................................9

    Figura 2.8: Caminho do diretrio HOME.........................................................................9

    Figura 2.9: Configurao das opes de acesso ao site...............................................10

    Figura 2.10: Configurao dos acessos ao site............................................................10Figura 2.11: Alterao das configuraes padro.........................................................11

    Figura 2.12: Criao de um diretrio virtual..................................................................12

    Figura 2.13: Especificao da pasta fsica para o diretrio virtual................................12

    Figura 2.14: Especificao dos tipos de acesso da pasta/ diretrio virtual...................13

    Figura 2.15: Propriedades dos diretrios virtuais..........................................................13

    Figura 2.16: Configurao dos arquivos e respectivas dlls..........................................14

    Figura 3.1: Tela inicial de instalao.............................................................................16

    Figura 3.2: Seleo do tipo de componente a ser instalado.........................................16

    Figura 3.3: Progresso da instalao..............................................................................17

    Figura 3.4: Tela de concluso da instalao.................................................................17

    Figura 3.5: rea de administrao do IIS......................................................................18

    Figura 3.6: Ferramentas administrativas do XP............................................................18

    Figura 3.7: Seleo do IIS.............................................................................................18

    Figura 3.8: Tela do IIS...................................................................................................19

    Figura 3.9: Status do Web Site......................................................................................19

    Figura 3.10: Alterando configuraes do Web Site Padro..........................................20

    Figura 3.11: Configuraes do Web Site Padro..........................................................20

    Figura 3.12: Alterao da pasta base para o site..........................................................21

    Figura 3.13: Pesquisa no Diretrio................................................................................22

    Figura 3.14: Documento padro para pesquisa............................................................23

    Figura 3.15: Alterando a ordem dos documentos.........................................................23

    Figura 3.16: Criando um novo sitecom extenses no servidor....................................24

    Figura 3.17: Criando um novo site................................................................................24

    Figura 3.18: Criando um novo SubWeb........................................................................25

    Figura 3.19: Escolha de uma nova pasta e ttulo..........................................................25Figura 3.20: Escolha do nome do administrador...........................................................26

  • 7/23/2019 ASP - Curso Completo

    4/121

    Figura 3.21: Nova SubWebcriada................................................................................26

    Figura 3.22: Pastas e arquivos das extenses do servidor...........................................27

    Figura 5.1: Resultado de cdigo mesclando HTML e ASP...........................................35

    Figura 5.2: Resultado de uma funo VBScript retornando a data...............................35

    Figura 6.1: Resultado da execuo da funo VarType...............................................42

    Figura 6.2: Teste com variveis globais e locais...........................................................44

    Figura 6.3: Erro retornado por no declarar explicitamente variveis...........................48

    Figura 8.1: Execuo do comando Do... Until...............................................................67

    Figura 8.2: Execuo do comando While... WEnd........................................................70

    Figura 9.1: ObjetoApplication.......................................................................................75

    Figura 9.2: Objeto Server..............................................................................................77

    Figura 9.3: Objeto Response.Write...............................................................................81

    Figura 9.4: Objeto Request...........................................................................................84Figura 10.1: Janela para configurao do ODBC..........................................................85

    Figura 10.2: Tela de configurao da Fonte de Dados de sistema...............................86

    Figura 10.3: Configurao do tipo de drive ODBC........................................................87

    Figura 10.4: Seleo do local e nome da Fonte de Dados...........................................87

    Figura 12.1: Segurana de Diretrio...........................................................................100

    Figura 12.2: Tela para configurao do acesso annimo...........................................101

    Figura 12.3: Aviso de item inseguro............................................................................101

    Figura A.1: Tela inicial de instalao do MySql Server and Clients 3.23.55...............103Figura A.2: Resumo das configuraes para instalao.............................................104

    Figura A.3: Seleo do caminho para instalao........................................................104

    Figura A.4: Seleo do tipo de instalao (tpica / compacta / personalizada)...........105

    Figura A.5: Relao de itens a serem instalados........................................................105

    Figura A.6: Progresso da instalao...........................................................................106

    Figura A.7: Concluso da instalao...........................................................................106

    Figura A.8: Tela do DOS para configurar o banco......................................................107

    Figura B.1: Solicitao da confirmao para instalao..............................................109

    Figura B.2: Informaes sobre o front.........................................................................109

    Figura B.3: Informaes sobre a licena.....................................................................110

    Figura B.4: Seleo da pasta para instalao.............................................................110

    Figura B.5: Informaes do atalho que ser criado.....................................................111

    Figura B.6: Informaes sobre a criao do atalho na rea de trabalho.....................112

    Figura B.7: Resumo das tarefas que sero executadas.............................................112

    Figura B.8: Finalizao da instalao..........................................................................113

    Figura B.9: ltima tela da instalao do front..............................................................114

    Figura C.1: Tela inicial da instalao do driveODBC.................................................115

  • 7/23/2019 ASP - Curso Completo

    5/121

    Figura C.2: Seleo do tipo de drive a ser instalado...................................................115

    Figura C.3: Seleo do tipo banco de dados a ser acessado.....................................116

    Figura C.4: Final da instalao do drive ODBC para MySQL.....................................116

  • 7/23/2019 ASP - Curso Completo

    6/121

    ASP Active Server Pages

    1Universidade do Sagrado Corao

    1. Introduo

    Alguns conceitos

    A Internet um conjunto de redes de computadores interligados pelo mundo

    inteiro, que tm em comum um conjunto de protocolos e servios, de forma que osusurios a ela conectados podem utilizar os servios de informao e comunicao de

    alcance mundial tais como: e-mail, servidores Web, ftp, irc, icq etc.

    O que popularizou a Internet foi a criao da World Wide Web. Trata-se de um

    servio para a transmisso multimdia de informaes implementado pelo protocolo de

    aplicao HTTP(Hypertext Transfer Protocol).

    Um Cliente HTTP(BrowserWEB) se comunica com um servidor HTTP(Servidor

    WEB) requisitando arquivos. Geralmente esses arquivos esto no formato HTML

    (Hypertext Markup Language) que pode conter referncias para outros arquivos

    diversos (imagens, sons, vdeos etc). Ao receber o arquivo HTML o cliente verifica

    cada referncia, solicitando ao servidor HTTP os arquivos indicados.

    Esse modelo de funcionamento limita bastante o uso da Web uma vez que as

    pginas HTML tm um contedo esttico, ou seja, sempre so exibidas da mesma

    forma e no possibilitam nenhuma interao com o usurio.

    Para deixar a Web mais dinmica e interativa, criou-se o CGI (Common

    Gateway Interface). Desta forma possvel executar programas num servidor Web

    que podem ser requisitados por um cliente Web. O programa processado e o

    resultado desse processamento enviado pelo servidor Web ao cliente, geralmente noformato HTML. importante perceber onde est o dinamismo do CGI: o

    processamento de tais programas pode retornar diferentes resultados, dependendo

    dos parmetros informados pelo cliente ao programa CGI.

    Apesar de dar mais vida a web, programas CGI possuem uma srie de

    desvantagens tcnicas, sendo a principal delas o fato de tais programas executarem

    num processo diferente do Web Server. Sendo assim, um servidor web que recebe

    vrias requisies simultneas, facilmente ir sobrecarregar.

    Devido a este fato surgiu, e ainda surgem a cada dia, tecnologias alternativasao uso do CGI: ISAPI, NISAPI, IDC/HTX, Cold Fusion, Java Server Pages (JSP),

    Personal Home Page (PHP),Active Server Pages(ASP) etc.

    ASP uma tecnologia da Microsoft que disponibiliza um conjunto de

    componentes para o desenvolvimento de pginas Web dinmicas. Tais pginas

    consistem em arquivos de extenso *.asp no formato texto(ASCII) que contm

    combinaes de scripts e tags HTML.

    Como todo cdigo de programao existente em pginas ASP executado no

    servidor, e este s retorna ao cliente respostas em HTML, aplicaes ASP tm seu

  • 7/23/2019 ASP - Curso Completo

    7/121

    ASP Active Server Pages

    2Universidade do Sagrado Corao

    cdigo fonte totalmente preservado alm de poderem ser acessadas por qualquer

    browser existente no mercado.

    Entre os recursos que podem ser implementados com ASP, pode-se citar:

    ? Programao com Visual Basic Script e Java Script

    ? Acesso a banco de dados

    ? Envio de e-mail

    Client Side Scripts

    So cdigos de programa que so processados pela estao cliente.

    Geralmente em aplicaes voltadas para a Internet, o cdigo que executado no

    cliente cuida apenas de pequenas consistncias de telas e validaes de entrada de

    dados

    Em se tratando de pginas web, os client-side scripts tero de ser processados

    por um browser. O maior problema de se utilizar este tipo de artifcio em uma

    aplicao a incompatibilidade de interpretao da linguagem entre os browsers. O

    Microsoft Internet Explorer, por exemplo, capaz de interpretar o Visual Basic Script,

    porm o Netscape no o faz sem o auxlio de um plug in (que foi desenvolvido por

    terceiros). H ainda o problema de verses muito antigas de navegadores, que no

    conseguem interpretar nenhum script.

    Em grande parte das situaes, no possvel exigir que o usurio final

    disponha de determinado produto para acessar a aplicao. Portanto importante

    pesar todos estes fatores ao planejar alguma aplicao com client-side scripts.A linguagem script mais indicada para se construir client-side scripts o

    JavaScript, devido a sua compatibilidade com os dois browsers (Netscape e Microsoft

    Internet Explorer, que devem ser de verses iguais ou superiores a 3.0 e 4.0

    respectivamente).

    Server Side Scripts

    So cdigos de programa que so processados no servidor. Devido a este fato,

    no necessrio preocupar-se com a linguagem que o cdigo foi criado: o servidor

    quem se encarrega de interpret-lo e de devolver uma resposta para o cliente. Empginas ASP, so esses cdigos os maiores responsveis pelos resultados

    apresentados, e a linguagem default utilizada o Visual Basic Script.

    A Figura 1.1 demonstra a forma de funcionamento de uma aplicao em ASP.

  • 7/23/2019 ASP - Curso Completo

    8/121

    ASP Active Server Pages

    3Universidade do Sagrado Corao

    Figura 1.1: Forma de funcionamento de aplicaes ASP.

    Vantagens do ASP

    ? Independncia do browser: ASP pode rodar pginas complexas no

    servidor e enviar somente os resultados para o cliente.

    ? Pginas x Bancos de Dados:Permite visualizar, atualizar e adicionar

    informaes nos servidores SQL.

    ? Segurana do cdigo fonte: Como o Servidor retorna somente o

    resultado html, o cdigo fonte fica preservado.

    ? Linguagens:O ASP pode utilizar comandos em VBScript, JavaScript e

    Html.

    Requisitos do ASP

    ? O computador que hospedar as pginas deve rodar Windows NT

    Server, Windows NT Workstation, Windows 95 ou Windows 98.

    ? O Microsoft Internet Information Server (IIS), o Peer Web Services

    (PWS) ou ainda o Personal Web Server (PWS, tambm) deve estar

    instalado neste computador. O Windows NT 4.0 vem com a verso 2.0

    do IIS, que no suficiente, para tal plataforma, necessrio atualizar a

    verso do IIS para 3 ou 4.

    ? Ao utilizar recursos de acesso a bancos de dados, estes devem estar

    disponveis atravs de um drive ODBC.

    BrowserCliente

    ...Bom DiaBoa Tarde

    INTERNET

    Requisiode teste.asp

    Servidor ASP

    Bom Dia

  • 7/23/2019 ASP - Curso Completo

    9/121

    ASP Active Server Pages

    4Universidade do Sagrado Corao

    ? As aplicaes ASP devero estar armazenadas em uma pasta no

    servidor de pginas. Esta pasta dever possuir a opo de execuo

    para todos os usurios.

    Resumo

    Que browser ssuportam ASP?

    Se a aplicao no possuir client-side script, todos os browsers suportam ASP.

    Isto acontece pelo fato das pginas ASP serem processadas pelo servidor. O cliente

    recebe somente cdigo HTML padro.

    O cdigo fonte estar protegido?

    Sim. Como o servidor retorna somente o resultado HTML, o cdigo fonte

    (lgica) fica preservado. Se, no browser, visualizar o cdigo fonte da pgina, somente

    poder ser visto cdigos HTML.

    O NT Server j vem com o IIS 2. Pode-se utiliz-lo para Active Server

    Pages?

    No. A tecnologia ASP foi incorporada somente a partir da verso 3.

  • 7/23/2019 ASP - Curso Completo

    10/121

    ASP Active Server Pages

    5Universidade do Sagrado Corao

    2. O Internet Information Server (IIS)

    O Microsoft Internet Information Server (IIS) o servidor web da Microsoft.

    nele que se deve configurar os alicerces das aplicaes ASP, criando diretrios

    virtuais, definindo permisses de acesso e disponibilizando as aplicaes. atravs

    do Management Console do IIS que estas configuraes so feitas.

    A Instalao do IIS

    Antes de detalhar a instalao do IIS, preciso saber quais so seus pr-

    requisitos:

    ? Windows NT Server 4.0

    ? Internet Explorer 4.0 ou superior.

    ? Option Pack 4.0

    A partir destes softwares e pacotes, possvel iniciar a instalao do IIS que naverdade, faz parte do pacote Option Pack 4.0 da Microsoft.

    Ao iniciar a instalao, a primeira tela a ser apresentada a de apresentao

    do produto, conforme demonstrado na Figura 2.1.

    Figura 2.1: Apresentao do Option Packdo Windows NT.

    Aps selecionar o boto Next(prximo) ser exibida a tela que solicita o tipo

    de instalao a ser executado, esta tela pode ser vista na Figura 2.2. Neste exemplo

    ser demonstrada a instalao custom(personalizada).

  • 7/23/2019 ASP - Curso Completo

    11/121

    ASP Active Server Pages

    6Universidade do Sagrado Corao

    Figura 2.2: Solicitao do tipo de instalao a ser executado.

    A prxima tela que ser apresentada, conforme a Figura 2.3, permite a seleo

    dos componentes a serem instalados.

    Figura 2.3: Seleo dos componentes a serem instalados.

  • 7/23/2019 ASP - Curso Completo

    12/121

    ASP Active Server Pages

    7Universidade do Sagrado Corao

    Tendo selecionado os pacotes que sero instalados, a prxima etapa ser

    selecionar as pastas onde o produto ser instalado. Esta tela pode ser vista na Figura

    2.4.

    Figura 2.4: Seleo das pastas para a instalao.

    Aps realizar estas tarefas, a instalao do IIS estar concluda.

    O Management Console

    O Management Console o painel de administrao geral do Microsoft Internet

    Information Server. atravs dele que so feitas as configuraes de todos os sites e

    aplicaes hospedados no servidor.

    A Figura 2.5 mostra a tela do Management Console.

  • 7/23/2019 ASP - Curso Completo

    13/121

    ASP Active Server Pages

    8Universidade do Sagrado Corao

    Figura 2.5: Management Console.

    Para criar um novo site, clique com o boto direito do mouse sobre o nome da

    mquina na qual deve residir este site, selecione a opo New ?New Site. Ser

    exibida uma tela que permite informar a descrio do siteque ser criado, conforme a

    Figura 2.6.

    Figura 2.6: Descrio do sitea ser criado.

    Na prxima tela, conforme pode ser observado na Figura 2.7, ser necessrio

    informar o IP da mquina que hospedar o sitee a porta para o servidor WEB, que

    normalmente a 80.

  • 7/23/2019 ASP - Curso Completo

    14/121

    ASP Active Server Pages

    9Universidade do Sagrado Corao

    Figura 2.7: IP da mquina e a porta para WEB.

    Na prxima tela deve ser informado o caminho do diretrio HOMEpara o siteque est sendo criado. Esta solicitao pode ser observada na Figura 2.8.

    Figura 2.8: Caminho do diretrio HOME.

    Na prxima tela, que pode ser vista na Figura 2.9, devem ser configuradas as

    opes de acessos ao novo siteque foi criado.

    Depois de criado o novo site, suas configuraes podem ser alteradas. AFigura 2.10 exibe a tela que permite realizar tais alteraes. Para executar esta

    operao, basta clicar com o boto direito do mouse sobre o Web Sitee selecionar a

    opo Properties.

  • 7/23/2019 ASP - Curso Completo

    15/121

    ASP Active Server Pages

    10Universidade do Sagrado Corao

    Figura 2.9: Configurao das opes de acesso ao site.

    Figura 2.10: Configurao dos acessos ao site.

    Cada site possui suas prprias configuraes. Estas so independentes de

    outros sites, ou seja, as configuraes feitas para um site no sero as mesmas para

    outro. A tela de propriedades dos sites permite que voc configure contas de

    segurana, performance, filtros ISAPI, diretrio home, documentos, cabealhos HTTP,

    mensagens de erros, etc.

    A Tabela 2.1 apresenta um resumo de cada uma das guias apresentadas na

    configurao.

  • 7/23/2019 ASP - Curso Completo

    16/121

    ASP Active Server Pages

    11Universidade do Sagrado Corao

    Guia Descrio

    Web Site Configurao do IP, portas de conexo e capacidades de login.

    Security Accounts Configurao das permisses de usurios.

    Performance Estabelece performance, largura de banda e configuraes de conexo.

    ISAPI Filters Gerenciamento dos filtros ISAPI.

    Home Directory Configurao de permisso de acesso e configuraes das aplicaes.

    Directory Security Configurao de autenticao da senha, segurana de comunicao e

    restries TCP/IP.

    Custom Erros Definio e configurao das mensagens de erro do HTTP.

    Tabela 2.1: Resumo de cada uma das guias apresentadas na configurao

    Alterando os valores padro do site

    possvel tambm alterar as propriedades padro (Default) para todos os sites

    criados. Para isso, selecione o nome da mquina onde deve-se criar os web sitese

    clique no boto edit. Ser apresentada a tela demonstrada na Figura 2.11.

    Figura 2.11: Alterao das configuraes padro.

    Criando diretrios virtuais

    Um diretrio fsico simplesmente o local onde est situada uma aplicao

    (conjunto de arquivos ASP e pginas HTML) no servidor, como por exemplo

    c:\inetpub\apps\ . Um diretrio virtual nada mais do que um atalho onde o IIS aponta

    para um diretrio fsico, o que no permite desse modo que se visualize todo o path

    dos arquivos acessados. Um exemplo de diretrio virtual seria www.usc.br/dirvirtual .

    atravs do Management Console que possvel a criao de diretriosvirtuais e ajustar as propriedades de cada um deles.

  • 7/23/2019 ASP - Curso Completo

    17/121

    ASP Active Server Pages

    12Universidade do Sagrado Corao

    Para criar um novo diretrio virtual, deve-se clicar com o boto direito do

    mouse no web siteonde est localizado este diretrio e selecione a opo New?

    Virtual Director y. Ser apresentada uma tela, conforme demonstrado na Figura 2.12.

    Aps apresentar esta opo, deve ser informado o alias desejado no campo

    apresentado.

    Figura 2.12: Criao de um diretrio virtual.

    A tela que segue, conforme apresentado na Figura 2.13, solicita a localizao

    fsica deste diretrio virtual que foi criado.

    Figura 2.13: Especificao da pasta fsica para o diretrio virtual.

    A prxima tela, que apresentada na Figura 2.14, solicita as formas de acesso

    que cada usurio possuir na pasta/diretrio virtual criado. Para que o usurio tenha a

    permisso de rodar um script, necessrio que seja dada a permisso Allow Script

    Access.

  • 7/23/2019 ASP - Curso Completo

    18/121

    ASP Active Server Pages

    13Universidade do Sagrado Corao

    Figura 2.14: Especificao dos tipos de acesso da pasta/ diretrio virtual.

    Configurando as caractersticas das aplicaesAs propriedades de um diretrio virtual so um pouco diferente das

    propriedades dos sites, pois no necessrio configurar especificaes do servio

    HTTP. Para visualizar as propriedades dos diretrios virtuais, basta seleciona-lo e

    clicar com o boto direito do mouse, escolhendo a opo Properties e ser

    apresentada uma tela, conforme demonstrado na Figura 2.15.

    Figura 2.15: Propriedades dos diretrios virtuais.

    Ao clicar no boto configurationser apresentada a tela que pode ser vista na

    Figura 2.16, atravs desta tela possvel configurar os arquivos que a aplicao

    estar utilizando, conforme suas extenses. Se uma aplicao estiver utilizando

    arquivos com extenso .asp por exemplo, estes devem ser processados pela DLLasp.dll, localizada em c:\winnt\system32\inetsrv\asp.dll.

    Permisses de acessoneste item esto definidas aspermisses de acesso que

    os usurios possuem para aaplicao localizada nodiretrioe:\InetPub\DaniM\Outros

    Clicando neste boto, possvel configurar aspropriedades da aplicao.

    Permisses de ScriptNeste item, possvelconfigurar as permissespara execuo de scripts.Para que um ASP possa serrodado preciso, pelomenos, permisso de Scritp.

  • 7/23/2019 ASP - Curso Completo

    19/121

    ASP Active Server Pages

    14Universidade do Sagrado Corao

    Figura 2.16: Configurao dos arquivos e respectivas dlls.

    Resumo

    ? Para instalar o IIS 4.0 preciso do Windows NT Server 4.0, Internet

    Explorer 4.0 ou superior e Option Pack 4.0.

    ?

    O Management Console a interface utilizada para a administrao doIIS.

    ? possvel criar vrios web sites para o mesmo endereo de IP e

    administr-los de forma diferente.

    ? Com os diretrios virtuais possvel criar um atalho especfico para sua

    aplicao dentro de um determinado web site.

    ? Para que seja possvel executar scripts (CGIs, ASP) a partir de um

    endereo, preciso configurar as permisses de acesso para, pelo

    menos, Al low Script Access.

  • 7/23/2019 ASP - Curso Completo

    20/121

    ASP Active Server Pages

    15Universidade do Sagrado Corao

    3. Instalando o Internet Information Server no Windows XP

    Os usurios que migraram recentemente do Windows 95 ou 98 para o novo

    sitema operacional da Microsoft Windows XP, e utilizavam antes o Personal Web

    Server, devem ter notado que o PWS j no mais acompanha a evoluo deste

    sistema operacional, sendo inclusive impraticvel sua instalao para o Windows XP.

    O PWS no pode ser atualizado a partir de produtos Windows anteriores. Isto deve-se

    ao fato de que o Windows XP utiliza a tecnologia NT, e agora, para utilizar um servidor

    WWW para trabalhar "localmente" e ver as pginas antes da publicao na internet

    devem optar pelo IIS (Internet information Services).

    O IIS para o Windows XP Professional foi projetado para desenvolvedores

    Web, para ser usado em aplicaes domesticas ou empresarias. O IIS Professional

    substitui o PWS e s pode servir 10 conexes de cliente simultneas e no aproveita

    todos os recursos das verses do servidor.Por isso, no recomendado a disponibilizar um sitena Internet ou Intranet

    atravs deste servidor, devido ao limite de conexes simultneas, e ainda, outras

    configuraes de segurana devem ser realizadas no servidor web e no sistema

    operacional para tal aplicao.

    Alguns detalhes a serem observados

    A Microsoft recomenda, por motivos de segurana, que antes da sua

    instalao, todas as unidades onde o IIS sejam utilizado com o sistema de arquivosNTFS.

    De maneira semelhante ao PWS, antes de instalar o IIS, necessrio que o

    protocolo TCP/IP do Windows e os utilitrios de conectividade sejam instalados.

    O IIS suporta:

    ? ASP

    ? PHP ( necessrio instalar)

    ? Server Side Includes(SSI)

    ? Controles ActiveX

    ? Roda scripts "Internet Server API (ISAPI)" e "Common Gateway

    Interface (CGI)"

    ? Acesso a banco de dados via ODBC

    ? Secure Sockets Layer (SSL)

    Instalando IIS para XP

    O IIS distribudo gratuitamente junto com o CD do Windows XP. Sua

    instalao simples e auto-explicativa.

  • 7/23/2019 ASP - Curso Completo

    21/121

    ASP Active Server Pages

    16Universidade do Sagrado Corao

    Colocando o CD do Windows XP, aparecer a tela inicial de instalao,

    conforme a Figura 3.1, onde deve ser escolhida a opo "Instalar Componentes

    Opcionais do Windows":

    Figura 3.1: Tela inicial de instalao.

    Em seguida aparecer uma tela para escolher o tipo de componente a ser

    instalado, conforme apresentado na Figura 3.2, deve-se selecionar a opo "Internet

    Information Services (IIS)".

    Figura 3.2: Seleo do tipo de componente a ser instalado.

    Clicando no boto "Avanar>". Aparecer a prxima tela, conforme a Figura

    3.3, onde poder ser observado o progresso da instalao.

  • 7/23/2019 ASP - Curso Completo

    22/121

  • 7/23/2019 ASP - Curso Completo

    23/121

    ASP Active Server Pages

    18Universidade do Sagrado Corao

    Figura 3.5: rea de administrao do IIS.

    Deve ser acessado o cone de "Desempenho e Manuteno", e em seguida

    "Ferramentas Administrativas", conforme Figura 3.6.

    Figura 3.6: Ferramentas administrativas do XP.

    Nesta etapa, basta clicar em "Internet Information Services ", esta tela pode ser

    vista na Figura 3.7.

    Figura 3.7: Seleo do IIS.

  • 7/23/2019 ASP - Curso Completo

    24/121

    ASP Active Server Pages

    19Universidade do Sagrado Corao

    Aps esta operao, obtm-se acesso rea de administrao do IIS. aqui

    que os sites sero criados, a tela do IIS pode ser vista na Figura 3.8.

    Figura 3.8: Tela do IIS.

    Propriedades de um Web Site Padro

    Ao ser instalado, o IIS cria automaticamente um Web SitePadro, j com as

    extenses do servidor instaladas e no diretrio j citado (C:\Inetpub\wwwroot).

    Ao escolher um dos sites instalados, no caso "Site da Web Padro", clicando

    sobre o mesmo, pode-se observar o status do seu servio, atravs da Figura 3.9, na

    barra de ferramentas da janela. Da forma como aparece acima, com o boto "Play"

    acionado, quer dizer que o servio web est ativo, e que a home pagepode serencontrada no endereo http://nome_da_maquina.

    Figura 3.9: Status do Web Site

    Usando os botes, tambm possvel "parar" ou "pausar" um determinado site.

    Basta clicar sobre os botes.

    possvel configurar algumas propriedades deste Site Padro clicando com o

    boto direito do mouse sobre o "Site da Web Padro" e escolhendo o menu

    "Propriedades", como observado na Figura 3.10.

  • 7/23/2019 ASP - Curso Completo

    25/121

    ASP Active Server Pages

    20Universidade do Sagrado Corao

    Figura 3.10: Alterando configuraes do Web Site Padro

    Clicando sobre Propriedades ser apresentada uma tela de configuraes

    conforme a Figura 3.11.

    Figura 3.11: Configuraes do Web Site Padro

    A guia "Diretrio Base" utilizada para alterar o diretrio default

    (C:\Inetpub\wwwroot) onde os sites sero criados. possvel alterar este caminho

  • 7/23/2019 ASP - Curso Completo

    26/121

    ASP Active Server Pages

    21Universidade do Sagrado Corao

    para qualquer pasta onde se deseja que os arquivos do site sejam gravados. Esta

    operao pode ser observada na Figura 3.12.

    Figura 3.12: Alterao da pasta base para o site.

    Ainda na Figura 3.12, pode-se observar uma seta vermelha ao lado da opo

    Gravar, que deve estar selecionada caso a aplicao venha a possuir um banco de

    dados nesta pasta para gravar dados.

    O campo "Pesquisa no diretrio" permite a pesquisa no diretrio especificado,

    caso no exista um documento padro, conforme pode ser visto na Figura 3.13.

  • 7/23/2019 ASP - Curso Completo

    27/121

  • 7/23/2019 ASP - Curso Completo

    28/121

    ASP Active Server Pages

    23Universidade do Sagrado Corao

    Figura 3.14: Documento padro para pesquisa.

    Os botes esquerda da caixa servem para alterar a ordem de busca dos

    documentos. Para retirar um documento da caixa, clique no nome desejado e depois

    clique no boto "Remover". Se desejar adicionar um novo nome para documento

    padro, clique no boto "Adicionar" e defina um novo documento padro, esta

    operao pode ser observada na Figura 3.14.

    Figura 3.15: Alterando a ordem dos documentos.

    Criando um novo sitecom extenses do servidor

    Para criar um novo site, com extenses do servidor para o FrontPage, deve-se

    clicar novamente com o boto direito em cima do "Site da Web Padro", ser exibida

    uma tela, conforme a que apresentada na Figura 3.16.

  • 7/23/2019 ASP - Curso Completo

    29/121

    ASP Active Server Pages

    24Universidade do Sagrado Corao

    Figura 3.16: Criando um novo sitecom extenses no servidor.

    No menu, escolhendo "Novo/Web das extenses de Servidor". Para cada site

    criado, necessrio repetir esta operao, conforme visto na Figura 3.17.

    Figura 3.17: Criando um novo site.

    Aparecer um assistente de instalao para uma nova SubWeb, chamada

    assim j que ser criada a partir da raiz instalada

    (http://nome_do_computador/subweb), de acordo com a Figura 3.18.

  • 7/23/2019 ASP - Curso Completo

    30/121

    ASP Active Server Pages

    25Universidade do Sagrado Corao

    Figura 3.18: Criando um novo SubWeb.

    O prximo passo escolher um nome para a pasta da SubWebe o ttulo que

    ser dado. De acordo com a Figura 3.19

    Figura 3.19: Escolha de uma nova pasta e ttulo.

    Em seguida ser perguntado o nome do administrador para este site, visto na

    Figura 3.20.

    .

  • 7/23/2019 ASP - Curso Completo

    31/121

    ASP Active Server Pages

    26Universidade do Sagrado Corao

    Figura 3.20: Escolha do nome do administrador.

    Voltando para a administrao do IIS, clicando em atualizar possvel observar

    a SubWebcriada, visto na Figura 3.21.

    Figura 3.21: Nova SubWebcriada.

    Importante:Sero criadas mais algumas pastas e arquivos neste diretrio, isto

    pode ser observado na Figura 3.22, so os arquivos das extenses do servidor.

  • 7/23/2019 ASP - Curso Completo

    32/121

    ASP Active Server Pages

    27Universidade do Sagrado Corao

    Figura 3.22: Pastas e arquivos das extenses do servidor.

  • 7/23/2019 ASP - Curso Completo

    33/121

    ASP Active Server Pages

    28Universidade do Sagrado Corao

    4. Formulrios e ASP

    A relao entre form HTML e ASP muito importante porque a partir de

    formulrio possvel disparar aes, so nestas aes que so chamadas as

    pginas ASP. Desta forma possvel consistir os campos, passar parmetros de uma

    pgina para outra, etc.

    A sintaxe para utilizar um Form no HTML a seguinte:

    objetos da Pgina

    Os parmetros da TagForm so:

    ACTION: neste item, deve-se especificar o diretrio e nome do arquivo ASP aser disparado.

    NAME: especifique um nome para o formulrio. Este item no obrigatrio.

    METHOD: define como os dados sero enviados para o servidor. Existem

    vrios mtodos, mas os que sero utilizados com mais freqncia sero: GET e

    POST:

    GET

    Utilizando este mtodo de envio dos dados, os dados enviados sero

    mostrados pelo browser.

    POST

    Utilizando este mtodo, os dados sero enviados para o ASP determinado no

    parmetro ACTION.

    Uma mesma pgina HTML ou ASP pode conter vrios FORMS disparando

    diferentes pginas ASP.

    Observao: a pgina que faz a chamada para uma outra pgina ASP no

    necessariamente precisa ser uma pgina ASP, pode ser um HTML como no exemplo

    a seguir:

  • 7/23/2019 ASP - Curso Completo

    34/121

    ASP Active Server Pages

    29Universidade do Sagrado Corao

    Untitled Normal Page

    Clique neste boto para saber as Horas:



    Clique neste boto para saber a Data:

    Observe que no exemplo acima so utilizados dois formulrios e cada um deles

    faz uma chamada para um ASP diferente.

    Clique neste boto para saber as Horas:

    Neste form, foi includo um boto do tipo submitque deve disparar a ao do

    form. A ao do form (ACTION) est definida para chamar um ASP com o nome

    horas.asp que se encontra no mesmo diretrio do HTML. Quando o arquivo estiver

    em um diretrio diferente do diretrio em que se encontra a pgina que fez a

    chamada, necessrio que ele seja indicado.

    O cdigo abaixo faz a chamada a outro ASP.

    Clique neste boto para saber a Data:

    Examinando o ASP das Horas:

  • 7/23/2019 ASP - Curso Completo

    35/121

    ASP Active Server Pages

    30Universidade do Sagrado Corao

    Horas ...

    So exatamente .

    Neste caso, a pgina obrigatoriamente deve ser nomeada com a extenso ASP

    pois contm cdigo VBScript a ser interpretado pelo servidor. O cdigo a ser

    interpretado pelo servidor :

    O ASP da Data:

    o mesmo caso que o arquivo das Horas, tambm precisa ser nomeado com a

    extenso ASP, pois a linha necessariamente ser interpretada pelo

    servidor. O restante do cdigo HTML.

    Resumo

    ? possvel definir vrios formulrio em um arquivo HTML para disparar

    vrios ASP.

    ? Um arquivo comum HTML pode disparar um ASP, porm um arquivo

    com cdigo que deve ser interpretado pelo servidor, deve ser nomeado

    com a extenso ASP.

    ? Para disparar um ASP a partir de um formulrio preciso definir o

    parmetro ACTION.

    ? Existem dois mtodos diferentes para disparar um ASP: GET (mostra

    os dados no browser) e POST (no mostra os dados no browser).

  • 7/23/2019 ASP - Curso Completo

    36/121

    ASP Active Server Pages

    31Universidade do Sagrado Corao

    5. O que VBScript

    Script

    Antes de falar sobre o VBScript, interessante esclarecer o que um script. As

    linguagens Scripts foram criadas para permitir a criao de aplicaes para a Internetrapidamente. Ao comparar estas linguagens com outras linguagens costumeiramente

    utilizadas, pode-se perceber que as primeiras so muitos mais fceis e simples de

    aprender e desenvolver. Os scripts permitem criar aplicaes que desempenham

    funes como:

    Alterar a linha de statusdo browser;

    Definir um timeoutpara determinadaprocedure;

    Rodar telas de alerta, confirmao e input;

    "Forar" a navegao para outras pginas;Alterar cor de fundo, barra de ttulos, etc.;

    Criar uma nova pgina com textos;

    Executar funes do browser como Back,Forward,Home, etc.;

    Executar procedimentos quando funes do browserforem executadas.

    Visual Basic Script Language (VBScript)

    O Visual Basic Script Language uma das muitas possibilidades de

    linguagem Script que rodam num servidor. Para o IIS ela a linguagem default

    (padro). Algumas de suas caractersticas so:

    ? similar ao Visual Basic Application (VBA) linguagem criada para

    fornecer aos aplicativos outras funcionalidades e Visual Basic.

    ? Permite a manipulao de strings, datas e numricos.

    ? Permite a utilizao de todos os comandos do Visual Basic, porm no

    permite a manipulao de banco de dados e acesso aos perifricos.

    ? A manipulao de banco de dados feita atravs do objeto ADO, o

    VBScript apenas cria instncias deste objeto, a partir da possvel

    utilizar os mtodos deste objeto para manipular os dados.

    ? Tem um mecanismo de comunicao com servidores de objetos COM,

    como o Microsoft Exchange Server, Microsoft Index Server, Database

    Servers.

    Baseada nas funcionalidades de programao do Visual Basic, um linguagem

    leve que nativamente executada pelo Internet Explorer (3.0 ou superor) e que pode

    ser executada por outros browsersa partir depug-in.

    Mas, como criar uma pgina ASP utilizando o VBScript ?

  • 7/23/2019 ASP - Curso Completo

    37/121

    ASP Active Server Pages

    32Universidade do Sagrado Corao

    preciso ter em mente que ser necessrio interpretar os cdigos do VBScript.

    O responsvel por esta interpretao o IIS, por este motivo o cdigo deve ser

    interpretado no Servidor e no no cliente que s ter o browser.

    Para que o cdigo seja interpretado pelo Servidor, preciso seguir algumas

    instrues:

    1. Utilizando a tag

    Esta Tag deve ser utilizada quando se pretende executar qualquer

    cdigo VBScript no servidor. Entre possvel ser escrito qualquer

    cdigo em VBScript.

    Quando o script possuir HTML e cdigo VBScript o servidor saber qual

    informao dever ser retornada para o cliente (browser). Por exemplo:

    Bom dia!

    Boa tarde!

    No exemplo acima, as linhas que estiverem entre a tag serointerpretadas pelo Servidor IIS e dependendo da condio satisfeita, se a hora

    for menor que 12 ser mostrado um HTML com Bom dia!, se no o HTML

    retornado pelo Servidor conter Boa Tarde!.

    Para retornar no HTML valores de variveis diretamente do script, utilize

    a seguinte sintaxe:

    A data de hoje .

    Com a linha acima, o HTML a ser retornado ser (imagine que o dia de

    hoje seja 31/12/2003):

    A data de hoje 31/12/2003.

    2. Utilizando a tag

    Com esta tag tambm possvel criar scripts que rodam no servidor

    utilizando a sintaxe:

  • 7/23/2019 ASP - Curso Completo

    38/121

    ASP Active Server Pages

    33Universidade do Sagrado Corao

    preciso especificar a linguagem script a ser utilizada e onde esta ser

    interpretada. A partir disto, s fazer a chamada de alguma parte do HTML. No

    caso acima, o scriptque estiver entre a tag deve ser

    escrito na linguagem VBScript e ser interpretada por um servidor IIS. Esta tag

    muito utilizada para criar funes e subrotinas. Por exemplo:

    Function RetornaData()

    RetornaData = Date

    End Function

    Esta funo retornar a data do sistema no Servidor. Para fazer a

    chamada desta funo, ser necessrio utilizar as tags. Por exemplo:

    A data de hoje .

    Outra alternativa disponvel no IIS para retornar valores direto para oHTML, sem utilizar a chamada acima, usando o Response.Write:

    Function RetornaData()

    Response.Write A data de hoje & Date & .

    End Function

    O HTML retornado (supondo que a data seja 31/12/2003):

    A data de hoje 20/08/1999.

    A pergunta imediata seria: como possvel retornar um HTML sendo

    que em momento algum foi feita a chamada para a funo? Bem, quando

    feito um pedido ao servidor pela execuo de um ASP, o servidor executa

    todas as funes declaradas no ASP, ento possvel concluir que esta

    funo tambm foi executada. Como o Response.Write retorna diretamente

  • 7/23/2019 ASP - Curso Completo

    39/121

    ASP Active Server Pages

    34Universidade do Sagrado Corao

    para o HTML o contedo do texto, ser mostrado para o usurio o texto

    definido.

    O prximo passo para a criao de uma pgina ASP introduzir o cdigo

    HTML. Por exemplo:

    Bom dia!

    Ol!

    So exatamente .


    Sua primeira pgina utilizando VBScript e HTML!

    Es te cdigo inteiro constitui uma pgina ASP, na qual esto mesclados cdigo em

    HTML e VBScript. O Servidor saber que o cdigo entre ser interpretado e no deveser mostrado para o cliente, apenas seu resultado. Neste caso, a pagina a ser retornada para o

    browser pode ser observado na Figura 5.1.

    Lembrando que os arquivos com cdigo VBScript devem ser nomeados com a

    extenso ASP, por exemplo: primeiro_programa.asp. Desta forma, o IIS entender que

    o pedido foi feito a partir de uma pgina ASP.

    Se for utilizada a Tag , o cdigo VBScript e HTML ficar:

    Function RetornaData()

    RetornaData = Date

    End Function

    A data de hoje .

  • 7/23/2019 ASP - Curso Completo

    40/121

    ASP Active Server Pages

    35Universidade do Sagrado Corao

    Figura 5.1: Resultado de cdigo mesclando HTML e ASP.

    O HTML retornado pelo servidor pode ser observado na Figura 5.2:

    Figura 5.2: Resultado de uma funo VBScript retornando a data.

    Foi visto como fazer para um script - utilizando o VBScript rodar no servidor.

    Mas caso a inteno seja fazer consistncias de tela para o usurio e que estas

    estejam definidas na pgina corrente, ou seja, no haver um pedido para o servidor,o cdigo dever ser executado no browser.

  • 7/23/2019 ASP - Curso Completo

    41/121

    ASP Active Server Pages

    36Universidade do Sagrado Corao

    Com o VBScript possvel criar rotinas que sejam executadas pelo cliente.

    Porm, dois aspectos devem ser observados quando se decide programar subrotinas

    e funes para rodar no browser:

    ? Neste exemplo, ser necessrio que o seu browser seja o Internet

    Explorer 4.0 ou superior.

    ? A programao deve ser baseada nos eventos dos objetos do

    formulrio e do prprio formulrio. Por exemplo: ONCLICK, CHANGE,

    GOTFOCUS.

    Exemplo de cdigo:

    Cdigo que roda no Cliente.

    SUB BOTAO1_ONCLICK()

    RodarCli.BOTAO1.Value = "Mudando o Value!"

    END SUB

    O HTML:

  • 7/23/2019 ASP - Curso Completo

    42/121

    ASP Active Server Pages

    37Universidade do Sagrado Corao

    Nesta parte, est sendo executado o boto. Para que a subrotina seja

    executada, o boto deve ser criado em um form, deve ser definido um nome para este

    objeto e seu tipo deve ser button. Depois de definir o objeto que deve disparar a ao,

    deve-se programar a subrotina:

    SUB BOTAO1_ONCLICK()

    RodarCli.BOTAO1.Value = "Mudando o Value!"

    END SUB

    Esta sub-rotina est sendo executada pelo browser, observe que no foi

    configurado a Tag com o parmetro RUNAT.O evento que deve disparar a ao ser o evento ONCLICK, ou seja, quando

    clicar no boto o cdigo escrito ser disparado.

    Para fazer a referncia ao objeto do formulrio, preciso seguir a sintaxe

    abaixo:

    NomedoFormulrio.NomedoObjeto.PropriedadedoObjeto

    Por exemplo:RodarCli.BOTAO1.Value

    Resumo

    ? VBScript a linguagem script default (padro) do IIS (Internet

    Information Server).

    ? Quando o cdigo deve rodar no servidor, necessrio que este esteja

    entre a Tag ou .? Um script tambm pode rodar no cliente, basta apenas utilizar a tag

    indicando a linguagem a ser utilizada para que o

    browserpossa interpret-la.

    ? preciso prestar bastante ateno quando scripts so definidos para

    rodarem nos browsers, pois alguns scripts apenas so interpretados por

    determinado browsere verso.

    Por exemplo:

    ?

    - apenas ser executado emNetscape 3.0+

  • 7/23/2019 ASP - Curso Completo

    43/121

    ASP Active Server Pages

    38Universidade do Sagrado Corao

    ? - apenas ser executado em Microsoft

    Internet Explorer 3.0+

    ?

  • 7/23/2019 ASP - Curso Completo

    44/121

  • 7/23/2019 ASP - Curso Completo

    45/121

    ASP Active Server Pages

    40Universidade do Sagrado Corao

    3.402823E38 para nmeros positivos.

    Double Ponto Flutuante com dupla preciso. Valores entre: -

    1.79769313486232E308 at -4.94065645841247E-324 para valores

    negativos; 4.94065645841247E-324 at 1.79769313486232E308 para

    valores positivos.

    Date (time) Contem um nmero que representa uma data entre 01/01/100 at

    31/12/9999.

    String Contem um comprimento varivel de texto que pode chegar at 2

    bilhes de caracteres.

    Object Contm um objeto.

    Error Contem um nmero de erro gerado por um objeto.

    Tabela 6.1: Resumo dos subtipos utilizados no VBScript.

    Funes de converso de tipos de dados

    Antes de descrever as funes, necessrio conhecer para que serve uma

    funo de converso de tipo. Estas funes so utilizadas para forar uma varivel

    Variant assumir um subtipo especfico.

    A partir do momento que as pginas ASP comearam a ser distribudas pela

    Internet, ou seja, pessoas do mundo inteiro acessando sua pgina, as configuraes

    de datas, moeda passaram a ser um fator preocupante. Pois estas configuraes so

    recuperadas da opo Configuraes Regionais do Painel de Controle da mquinaonde o VBScript est sendo executado. Como o VBScript, na maioria das vezes,

    executado em um servidor, as configuraes recuperadas so as configuraes feitas

    no prprio servidor.

    As funes de converso de dados foram criadas para evitar erros em tempo

    de execuo ou mesmo de lgica por sua aplicao no reconhecer o tipo de dados

    pelas configuraes. Estas funes conseguem reconhecer as configuraes regionais

    e interagir com vrios formatos diferentes de dados sem mud-los, evitando que erros

    ocorram.A Tabela 6.2 descreve as funes que permitem a converso de dados.

    Funo Valor Retornado Descrio

    Cbool Boolean Verdadeiro / Falso.

    Cbyte Byte Valor numrico de 0 at 255.

    Ccur Currency Valores entre -922,337,203,685,477.5808 at

    922,337,203,685,477.5807.

    Cdate Date Qualquer data vlida.

    Cdbl Double -1.79769313486232E308 at -4.94065645841247E-

  • 7/23/2019 ASP - Curso Completo

    46/121

    ASP Active Server Pages

    41Universidade do Sagrado Corao

    324 para valores negativos; 4.94065645841247E-324

    at 1.79769313486232E308 para valores positivos.

    Cint Integer 32,768 at 32,767. Fraes so arredondadas.

    Clng Long 2,147,483,648 at 2,147,483,647. Fraes so

    arredondadas.

    Csng Single -3.402823E38 at -1.401298E-45 para nmeros

    negativos; 1.401298E-45 at 3.402823E38 para

    nmeros positivos.

    Cstr String Retorna texto, exceto Null.

    Tabela 6.2: Resumo das funes de converso.

    Identificando tipos de dados

    Como o VBScript consegue identificar uma srie de subtipos de variveis, sernecessrio, s vezes, saber qual o subtipo com o qual est trabalhando o script. Para

    isso, existe a funo VarType que identifica o subtipo por um valor numrico. A Tabela

    6.3 descreve os valores retornados pela funo.

    SubTipo Valor retornado

    Empty 0

    Null 1

    Integer 2Long 3

    Single 4

    Doubl 5

    Currency 6

    Date(time) 7

    String 8

    Automation Object 9

    Error 10Boolean 11

    Variant 12

    Non-Automation Object 13

    Byte 17

    Array 8192

    Tabela 6.3: Valor retornado na identificao de tipos.

  • 7/23/2019 ASP - Curso Completo

    47/121

    ASP Active Server Pages

    42Universidade do Sagrado Corao

    Para verificar o subtipo de dados que a varivel teste assumiu, utilize o cdigo

    script: que j retornar o valor numrico correspondente ao

    subtipo assumido.

    No caso da varivel teste, o valor retornado 2, que indica o subtipo Integer.

    No se pode referenciar as variveis cont e Retorna, pois estas variveis

    existem apenas para a funo, para o restante do script so invlidas.

    O resultado retornado pelo servidor pode ser observado na Figura 6.1.

    Figura 6.1: Resultado da execuo da funo VarType.

    Declarao de variveis

    Quando variveis so declaradas, preciso se ter em mente a sua utilizao:

    ser uma varivel que dever ser utilizada por toda uma aplicao ou apenas por um

    mdulo, uma funo, subrotina.

    Este perodo de vida da varivel flexvel, ou seja, pode-se definir onde,

    quando e por quanto tempo esta varivel dever existir.

    Escopo das variveis

    As variveis no VBScript podem existir em dois nveis ou escopos: script ou

    procedimento. O termo escopo est relacionado ao espao de tempo no qual uma

    varivel pode ser referenciada na memria.

    O espao de tempo, que se refere ao tempo de vida da varivel, depende em

    qual nvel esta varivel foi declarada:

    Script

  • 7/23/2019 ASP - Curso Completo

    48/121

  • 7/23/2019 ASP - Curso Completo

    49/121

    ASP Active Server Pages

    44Universidade do Sagrado Corao

    Quando executado, este cdigo retornar o resultado que pode ser observado

    na Figura 6.2.

    Figura 6.2: Teste com variveis globais e locais.

    Explicao do cdigo

  • 7/23/2019 ASP - Curso Completo

    50/121

  • 7/23/2019 ASP - Curso Completo

    51/121

    ASP Active Server Pages

    46Universidade do Sagrado Corao

    ou diminuir. Caso seja necessrio aumentar o tamanho do vetor, mantendo os

    elementos j inclusos nas posies existentes, utilize o comando Preserve. Por

    exemplo, o cdigo a seguir cria um vetor dinmico chamado ProdutosSelecionados e o

    redimenciona com 3 posies. A ltima linha expande o nmero de elementos do vetor

    para 6, como est sendo utilizada a clusula Preserve, o contedo j incluso no vetor

    permanecer.

    Dim ProdutosSelecionados()

    ReDim ProdutosSelecionados(3)

    ProdutosSelecionados(0) = Caderno

    Redim Preserve ProdutosSelecionados(6)

    PublicQuando uma varivel declarada como pblica, esta varivel pode ser

    referenciada por todo o script da pgina. Vetores estticos ou dinmicos tambm

    podem ser declarados com a clusula Public.

    Sintaxe:

    Public nomevar[([dimenso])]

    Onde nomevar o nome da varivel e dimenso o nmero de elementos do

    vetor.

    Private

    Variveis declaradas com a clusula Private so o oposto das variveis

    declaradas com a clusula Public. So vlidas apenas dentro do script no qual foram

    declaradas. Pode-se declarar vetores dinmicos e estticos com o Private.

    Sintaxe:

    Private nomevar[([dimenso])]

    Onde nomevar o nome da varivel e dimenso o nmero de elementos do

    vetor.

    A Tabela 6.4 apresenta um resumo dos tipos de declaraes e seus escopos.

    Declarao Escopo

    Dim Script todo ou Procedimento

    ReDim Script todo ou Procedimento

    Public Script todo

    Private Script todo

    Tabela 6.4: Tipos de declaraes e escopos

  • 7/23/2019 ASP - Curso Completo

    52/121

    ASP Active Server Pages

    47Universidade do Sagrado Corao

    Regras para nomear as variveis

    Para dar nome s variveis, preciso seguir algumas regras:

    ? Deve comear com um caracter alfabtico;

    ? No pode exceder o tamanho de 255 caracteres;

    ? Deve ser nico no escopo no qual a varivel declarada.

    Option Explicit

    Por default, a declarao das variveis no obrigatria. possvel apenas

    fazer referncias a elas, sem declar-las explicitamente. A declarao explicita se

    refere ao processo de criao ou instanciao de uma varivel

    Exemplo



    Onde teste e Mensagem so variveis declaradas implicitamente, o VBScript

    se encarrega de entend-las como variveis.

    Esta declarao implcita no considerada uma boa prtica, pois esto

    sujeitos a erros de digitao, declarar uma varivel chamada teste e outra tsete so

    consideradas variveis diferentes. Para evitar este tipo de erro, a declarao do Option

    Explicit est disponvel para que obrigatoriamente todas as variveis sejam declaradas

    explicitamente.

    Optando por utiliz-lo, a sua declarao deve ser feita antes de qualquer outra

    declarao.

    Exemplo:

  • 7/23/2019 ASP - Curso Completo

    53/121

    ASP Active Server Pages

    48Universidade do Sagrado Corao

    Mensagem = "O valor da varivel Teste igual a 30"

    Else

    Mensagem = "O valor da varivel Teste igual a 5"

    End if

    %>



    Observe neste exemplo que foi declarada a clausula Option Explicit porm,

    no foi declarada explicitamente a varivel teste. Ao executar este ASP no servidor,

    ser retornado um erro como mostra a Figura 6.3.

    Figura 6.3: Erro retornado por no declarar explicitamente variveis.

    Resumo

    ? Existe apenas um tipo de dados suportado pelo VBScritp: Variant.

    ? Embora haja apenas um tipo de dados, existem subtipos que

    identificaram o valor que armazenado na varivel, atribuindo-lhe o

    subtipo especfico de acordo com o valor. Se o valor for numrico, o

    subtipo ser integer.

    ? Com a funo VarType, possvel identificar o subtipo assumido pela

    varivel.

  • 7/23/2019 ASP - Curso Completo

    54/121

    ASP Active Server Pages

    49Universidade do Sagrado Corao

    ? Para o ASP, as variveis possuem dois escopos: Script e

    Procedimento. Quando uma varivel declarada em nvel Script,

    possvel referenci-la em todo o script. Quando em um Procedimento, a

    varivel apenas vlida para o procedimento em questo.

    ? Utilizando a clusula Option Explicit, fica obrigatria a declarao

    explicita da varivel.

    ? Quando utilizada a clusula Dim em um procedimento, geralmente a

    declarao feita no comeo do procedimento.

    ? Antes de atribuir valores a um vetor dinmico, preciso redimencion-lo

    usando o comando ReDim.

  • 7/23/2019 ASP - Curso Completo

    55/121

    ASP Active Server Pages

    50Universidade do Sagrado Corao

    7. Operadores

    O VBScript possui vrios operadores de programao que ajudam a manipular

    as variveis em suas pginas ASP. Muitas linguagens dividem os modelos de objetos

    em grupos lgicos agrupados de acordo com suas funcionalidades. Isto d maior

    flexibilidade para manipular objetos e variveis dos formulrios e fundamental para o

    controle do processo de uma aplicao.

    Operadores aritmticos

    Os operadores aritmticos permitem fazer uma srie de clculos matemticos.

    Geralmente, possuem a seguinte sintaxe:

    Resultado = valor1 operador valor2

    Onde Resultado a varivel que receber o valor do clculo, valor1 e valor2so expresses numricas e o operador representa a operao matemtica a ser

    realizada.

    A Tabela 7.1 lista todos os operadores reconhecidos pelo VBScript.

    Operador Smbolo Descrio

    Adio + Efetua a soma entre os valores

    Subtrao - Efetua a subtrao entre dois nmeros ou atribui um

    valor negativo a nmero.Multiplicao * Efetua a multiplicao entre os valores.

    Diviso / Efetua a diviso entre dois nmeros.

    Diviso Inteira \ Efetua a diviso entre dois nmeros e retorna um valor

    inteiro como resultado.

    Exponenciao ^ Efetua a operao de potenciao.

    Tabela 7.1: Operadores reconhecidos pelo VBScript.

    AdioO operador de adio (+) utilizado para efetuar somas entre valores

    numricos, mas tambm pode ser utilizado para concatenar strings.

    Sintaxe:

    Resultado = valor1 + valor2

    Onde resultado recebe o valor da soma das expresses numricas valor1 e

    valor2. Lembrando que existe apenas um tipo de varivel no VBScript: Variant. Somar

    dois valores pode resultar em um resultado no esperado, por causa da capacidade

    do tipo Variant mudar automaticamente o subtipo baseado no valor atribudo

    varivel.

  • 7/23/2019 ASP - Curso Completo

    56/121

    ASP Active Server Pages

    51Universidade do Sagrado Corao

    A Tabela 7.2 mostra o comportamento do operador (+), dependendo do tipo de

    dados.

    Se os valores a serem somados forem O comportamento do operador ser

    Numricos Adio

    Strings Concatenao

    String e Numrico Adio

    Tabela 7.2: Comportamento do operador (+).

    Exemplo:

    possvel perceber por este exemplo que sem um entendimento apropriado

    sobre o tipo de dados Variant e o comportamento do operador de adio, o resultado

    pode no ser o esperado. No exemplo acima, as variveis so explicitamente

    declaradas e valor1 recebe o 1 (numrico), assumindo o subtipo Integer, e a varivel

    valor2 recebe 3 (string), assumindo o subtipo String. Todas as variveis declaradas

    so do tipo Variant. Entretanto, o VBScript atribui um subtipo dependendo do valor

    atribudo a varivel.

    Nas linhas abaixo, a varivel resultado receber o valor 4. Pois, pela regra,

    quando somado um valor numrico e uma string, a soma numrica entre eles

    efetuada.

    Resultado = valor1 + valor2

    Resultado = valor2 + valor1

    J nesta linha, o resultado diferente. Pois os valores participantes da adio

    so valores numricos, ento ser efetuada a concatenao das strings. A varivel

    resultado conter o valor (string) 33.

    Resultado = valor2 + valor2

  • 7/23/2019 ASP - Curso Completo

    57/121

    ASP Active Server Pages

    52Universidade do Sagrado Corao

    Na prxima linha, somando dois valores numricos, pois o subtipo da varivel

    valor1 Integer. O valor retornado para a varivel resultado ser 2.

    Resultado = valor1 + valor1

    Mas, caso seja necessrio que o resultado da linha Resultado = valor2 +

    valor2 fosse numrico?

    Para isso, utilize as funes de converso de tipo. Esta linha poderia ser

    reescrita da seguinte maneira:

    Resultado = CInt(valor2) + CInt(valor2)

    A funo CInt utilizada para converter uma varivel para Inteiro. E a varivel

    resultado receberia o valor numrico 6.

    O mesmo vale para a linha Resultado = valor1 + valor1. Se o resultado a ser

    retornado precisasse ser uma concatenao de stringse no uma soma numrica, a

    linha seria reescrita da seguinte maneira:Resultado = CStr(valor1) + CStr(valor1)

    A funo CStr utilizada para converter uma varivel para String. E a varivel

    resultado receberia a string22.

    Subtrao

    O operador de subtrao (-) utilizado para efetuar a diferena entre valores

    numricos ou para converter um valor numrico positivo em um valor numrico

    negativo. Para cada uma destas funcionalidades, preciso uma sintaxe diferente,conforme exemplo abaixo:

    Resultado = valor1 valor2

    Onde resultado recebe o valor da operao entre as variveis numricas

    valor1 e valor2.

    Resultado = -(valor1)

    Onde valor1 um valor numrico.

    Multiplicao

    O operador de multiplicao (*) utilizado para retornar o resultado da

    multiplicao entre valores numricos.

    Sintaxe:

    Resultado = valor1 * valor2

    Onde resultado recebe o valor da operao entre as variveis numricas

    valor1 e valor2. Se ambas as variveis estiverem com o valor igual a NULL, o valor

  • 7/23/2019 ASP - Curso Completo

    58/121

    ASP Active Server Pages

    53Universidade do Sagrado Corao

    retornado da operao tambm ser NULL. Se estiverem vazias, o resultado ser

    convertido para 0 (zero).

    Diviso

    O operador de diviso (/) utilizado para dividir uma expresso numrica em

    outra expresso numrica.

    Sintaxe:

    Resultado = valor1 / valor2

    Onde Resultado recebe o valor da operao entre as variveis numricas

    valor1 e valor2. As mesmas regras da multiplicao valem para a diviso. Se ambas

    as variveis estiverem com o valor igual a NULL, o valor retornado da operao

    tambm ser NULL. Se estiverem vazias, o resultado ser convertido para 0 (zero).

    necessrio ateno a diviso por 0 (zero). Ser o retornado um erro pelobrowserinformando que ouve uma diviso por zero.

    Diviso Inteira

    O operador da diviso inteira (\) similar ao da diviso, mas foi

    especificamente, criado para retornar resultados inteiros apenas.

    Sintaxe:

    Resultado = valor1 \ valor2

    Onde Resultado recebe o valor da operao entre as variveis numricasvalor1 e valor2. Estas variveis so arredondadas e seu subtipo configurados para

    Byte, Integer ou Long antes da operao. Se ambas as variveis estiverem com o

    valor igual a NULL, o valor retornado da operao tambm ser NULL. Se estiverem

    vazias, o resultado ser convertido para 0 (zero).

    Exponenciao

    O operador de exponenciao (^) utilizado para "elevar" um nmero a outro.

    Sintaxe:

    resultado = nmero1 ^ nmero2

    Onde resultado recebe o valor retornado da operao efetuada pelas

    expresses numricas nmero1 e nmero2.

    Operadores de comparao

    Os operadores de Comparao analisam o relacionamento entre expresses.

    Lembrando-se que uma expresso pode ser uma combinao de palavras-chaves,

    operadores, variveis ou constantes que formam uma string, nmero ou objeto.

    Sintaxe geral:

  • 7/23/2019 ASP - Curso Completo

    59/121

    ASP Active Server Pages

    54Universidade do Sagrado Corao

    Resultado = Expresso1 (operador) Expresso2

    Onde Expresso1 e Expresso2 contm uma expresso qualquer e o

    operador representa o smbolo de relacionamento entre as expresses (o tipo de

    comparao).

    A Tabela 7.3 mostra os Operadores de comparao utilizados no VBScript.

    Operador Smbolo

    Igualdade =

    Desigualdade

    Maior que >

    Menor que =

    Menor que ou igual a = Expr2 Expr1 ou Expr2 = NULL

    Expr1 > Expr2 Expr1 = Expr1 >= Expr2 Expr1 < Expr2 Expr1 ou Expr2 = NULL

    = Expr1 = Expr2 Expr1 Expr2 Expr1 ou Expr2 = NULL

    Expr1 Expr2 Expr1 = Expr2 Expr1 ou Expr2 = NULL

    Tabela 7.4: Resultados possveis entre comparaes.

    Os operadores de comparao atuam como os operadores aritmticos, pois

    alteram seu comportamento dependendo do tipo de dados das variveis envolvidas.Na Tabela 7.5 explicado o comportamento dos operadores de comparao:

  • 7/23/2019 ASP - Curso Completo

    60/121

    ASP Active Server Pages

    55Universidade do Sagrado Corao

    Expresses Comportamento

    Numricas Comparao numrica.

    Strings Comparao string.

    Uma numrica e outra String A expresso numrica menor que a expresso

    string.

    Uma vazia e outra numrica Comparao numrica sendo que a expresso

    vazia tratada como zero.

    Uma vazia e outra string Comparao string sendo que a vazia tratada

    como comprimento zero ( ).

    Ambas as expresses so vazias As expresses so iguais

    Tabela 7.5: Comportamento dos operadores de comparao.

    Outro tipo de comparao a comparao entre objetos. O operador IS

    utilizado para fazer esta comparao. A sintaxe a ser utilizao est descrita abaixo:

    Resultado = objeto1 IS objeto2

    Onde Objeto1 e Objeto2 representam objetos e o uso da palavra-chave IS

    determina um relacionamento entre os objetos.

    Quando comparados os objetos, no existe a possibilidade de NULL. O

    resultado sempre ser True ou False. Se os objetos forem iguais, o resultado ser

    igual a True. Se forem diferentes, o resultado retornado ser False.

    Exemplo:

    Na primeira linha de comparao (Resultado = Pobjeto is Sobjeto), o valor

    retornado True, pois os dois objeto (Pobjeto e Sobjeto) foram criados a partir de um

    mesmo objeto.

    J na segunda linha de comparao ( Resultado = Pobjeto is TerObjeto), o

    valor retornado False, pois os objetos tm origens diferentes, cada um deles foi

    criado a partir de objetos diferentes.

  • 7/23/2019 ASP - Curso Completo

    61/121

    ASP Active Server Pages

    56Universidade do Sagrado Corao

    Operadores lgicos

    Os operadores lgicos ajudam a expandir as funcionalidades dos operadores

    de comparao. O operador lgico foca o mtodo booleanopara determinar se um

    processo retorna True ou False.

    Os operadores lgicos mais utilizados esto listados na Tabela 7.6.

    Operador Smbolo

    Conjuno AND

    Negao NOT

    Desconjuno OR

    Tabela 7.6: Operadores lgicos.

    Operador NOTEste operador utilizado para realizar negao lgica em uma expresso, ou

    seja, para negar ou inverter um resultado.

    Sintaxe:

    Resultado = NOT (Expresso)

    Onde Expresso qualquer expresso. Por exemplo:

    30)Response.Write teste

    %>

    A Tabela 7.7 demonstra os resultados das operaes utilizando o operador

    NOT.

    Expresso Resultado

    True FalseFalse True

    NULL NULL

    Tabela 7.7: Resultados de operaes como o operador lgico NOT.

    Lembre-se que uma varivel que contm o valor NULL, representa uma

    varivel com valor invlido. Conseqentemente, qualquer operador reproduzir um

    resultado NULL. Tenha em mente que um varivel com uma string vazia ( ), no

    igual a NULL. Por exemplo:

  • 7/23/2019 ASP - Curso Completo

    62/121

    ASP Active Server Pages

    57Universidade do Sagrado Corao

    Retornar False, pois o contedo de varivel uma string vazia.

    Retornar True, pois o contedo de variavel igual a NULL.

    * A funo IsNull verifica se o contedo de uma varivel igual a NULL.

    Operador AND

    utilizado para avaliar um conjunto de expresses como se fosse apenas uma

    comparao. O operador AND apenas retornar True, se e somente se todas as

    comparaes forem verdadeiras.

    Sintaxe:

    Resultado = Expresso1 AND Expresso2

    Onde Expresso1 e Expresso2 so quaisquer expresso.

    Exemplo:

    30) AND (20 < 30)

    Response.Write teste

    %>

    Neste caso, teste receber o valor False. Pois embora 20 seja menor que 30,

    10 no maior que 30. Ento, como o AND apenas retorna True se todas as

    expresses forem verdadeiras, a varivel teste receber false.

    A Tabela 7.8 lista o comportamento do operador AND:

    Expresso 1 Expresso 2 Resultado

    True True True

    True False False

    True NULL NULL

  • 7/23/2019 ASP - Curso Completo

    63/121

    ASP Active Server Pages

    58Universidade do Sagrado Corao

    False True False

    False False False

    False NULL False

    NULL True NULL

    NULL False False

    NULL NULL NULL

    Tabela 7.8: Comportamento do operador AND.

    Operador OR

    Avalia se alguma expresso de uma srie de expresses verdadeira.

    Sintaxe:

    Resultado = Expresso1 OR Expresso2

    Onde Expresso1 e Expresso2 so quaisquer expresso.Exemplo:

    30) OR (20 < 30)

    Response.Write teste

    %>

    Neste caso, a varivel teste receber True. Pois uma das expresses acima verdadeira: 20 < 30. A Tabela 7.9 descreve o comportamento do operador OR,

    dependendo do resultado da expresso.

    Expresso 1 Expresso 2 Resultado

    True True True

    True False True

    True NULL True

    False True TrueFalse False False

    False NULL NULL

    NULL True True

    NULL False NULL

    NULL NULL NULL

    Tabela 7.9: Comportamento do operador OR.

  • 7/23/2019 ASP - Curso Completo

    64/121

    ASP Active Server Pages

    59Universidade do Sagrado Corao

    Operadores de concatenao

    Existem dois operadores no VBScript utilizados para somar (concatenar)

    strings . A Tabela 7.10 os demonstra.

    Operador Smbolo Descrio

    Concatenao de string & Usado para concatenar strings

    Operador de adio e string + Usado para concatenar strings e adio

    numrica

    Tabela 7.10: Operadores de concatenao

    Operador &

    Utilizado para somar duas cadeias de caracteres (strings).

    Sintaxe:resultado = string1 & string2

    Onde string1 e string2 so expresses strings vlidas para o VBScript.

    Exemplo:

    Operador +

    O operador de Adio tambm pode ser utilizado para concatenar strings.

    Porm, no recomendado sua utilizao para este tipo de funo, pois sua funo

    principal seria a soma de valores numricos. A ambiguidade ocorre quando o operador

    + utilizado em diferentes subtipos, no caso, string e valores numricos.

    Sintaxe:

    Resultado = string1 + string2

    Onde string1 e string2 so expresses do subtipo string vlidas para o

    VBScript.

    Exemplo:

    O resultado retornado o mesmo que foi retornado quando utilizado o

    operador &.

  • 7/23/2019 ASP - Curso Completo

    65/121

    ASP Active Server Pages

    60Universidade do Sagrado Corao

    Ordem de Avaliao das Expresses

    A avaliao das expresses baseada nas categorias dos operadores.

    Operadores aritmticos so os primeiros a serem processados, seguidos pelos

    operadores de comparao e por fim, pelos operadores lgicos.

    Resumo

    ? Os operadores aritmticos aceitos pelo VBScript so: + (Adio), -

    (Subtrao), * (Multiplicao), / (diviso), \ (diviso inteira) e ^

    (Exponenciao).

    ? Os operadores de comparao so: = (igualdade), (desigualdade), >

    (maior que), < (menor que), >= (maior ou igual a),

  • 7/23/2019 ASP - Curso Completo

    66/121

    ASP Active Server Pages

    61Universidade do Sagrado Corao

    8. Comandos bsicos do VBSript

    Neste captulo, estaremos estudando os comandos para controle do fluxo de

    uma aplicao. Veremos as estruturas lgicas existentes no VBScript que devem

    permitir este controle: estruturas lgicas de deciso e repetio. Estruturas lgicas de

    deciso executam uma determinada condio e, dependendo do teste, retornam o

    HTML apropriado como resultado. A estrutura de repetio por sua vez, um

    processo cclico, ou seja, repete um determinado conjunto de instrues at que uma

    condio seja satisfeita.

    Estruturas de Deciso

    Utilizadas para tomar decises. Por exemplo, se a hora for menor que 12:00,

    retorne um HTML com Bom dia, se no, retorne um HTML com Ola!. Neste

    exemplo, a aplicao apenas mandou retornar um HTML com um texto para o usurio,este teste poderia determinar que dependendo do horrio, deveria ser retornado

    determinada pgina, desviar para outra URL, etc. Estruturas como esta so utilizadas

    para determinar o fluxo da aplicao, com elas possvel definir qual pgina deve ser

    aberta, determinar o texto a ser escrito para o cliente, estados dos objetos na tela:

    selecionados, preenchidos, etc.

    O primeiro comando a ser visto ser o IF. Este comando utilizado para testar

    uma condio como verdadeira ou falsa. E dependendo dos resultados, determinado

    bloco de instrues ser executado.Sintaxe:

    If Then

    Bloco de Instruo (pode ser apenas uma ou vrias)

    [Else

    Bloco de Instruo ]

    End If

    Onde a expresso a ser testada. Se for verdadeira, o bloco de

    instruo que estiver definido depois do Then ser executado. O Else representa o se

    no, ou seja, se a no for satisfeita (no for verdadeira), o bloco de

    instrues definido depois do Else ser executado. End if termina o bloco IF.

    Observe que a deve ser uma expresso que pode ser avaliada

    como true/false (verdadeiro/falso). Por exemplo:

  • 7/23/2019 ASP - Curso Completo

    67/121

  • 7/23/2019 ASP - Curso Completo

    68/121

  • 7/23/2019 ASP - Curso Completo

    69/121

    ASP Active Server Pages

    64Universidade do Sagrado Corao

    Sintaxe:

    Select Case

    [Case ValorX-Condio

    [Bloco de Instrues]]

    [Case Else ValoresN-CondioN

    [Bloco de Instrues]]

    End Select

    Onde uma varivel do tipo numrica ou texto (string), Condio e

    CondioN so as possibilidades de valores que esta varivel pode assumir.

    A lgica do SELECT similar a do IF ... Then ... Else. Ambas as estruturas

    permitem o caso de todas as condies falharem e o fluxo do bloco ser desviado para

    um caso de se no. A clusula Else do SELECT utilizada quando nenhumacondio satisfeita pelo critrio. Pode-se reescrever o exemplo utilizado com o IF ...

    Then ... ElseIf, utilizando o o SELECT:

    O cdigo VBScript (ASP)

    Este arquivo deve ser nomeado com a extenso ASP, pois contem cdigos que

    apenas um servidor IIS pode interpretar.

  • 7/23/2019 ASP - Curso Completo

    70/121

  • 7/23/2019 ASP - Curso Completo

    71/121

    ASP Active Server Pages

    66Universidade do Sagrado Corao

    Estruturas de Repetio

    So estruturas que repetiro um bloco de instrues at que a condio

    especificada seja satisfeita ou por um nmero de vezes especificado. No VBScript,

    sero apresentadas 3 destas estruturas:

    Do ... Loop

    For ... Next

    While ... Wend

    A primeira a ser vista ser a Do ... Loop. utilizado para executar um conjunto

    de instrues at que a condio determinada seja verdadeira. O Do ... Loop oferece

    dois operadores condicionais para avaliar uma condio: While e Until.

    Sintaxe:

    Do {Until | While }

    Exit Do

    Loop

    Ou

    Do

    Exit Do

    Loop {Until | While }

    Onde deve ser uma expresso que pode ser avaliada como

    true/false (verdadeiro/falso), so os comandos que devem ser

    executados enquanto a condio no for satisfeita.

    A diferena entre as sintaxes acima o local da condio. Na primeira sintaxe,

    a condio est localizada na mesma linha de execuo do Do. Na segunda, a

    condio est localizada no final do lao ao lado do Loop. Esta mudana de

  • 7/23/2019 ASP - Curso Completo

    72/121

    ASP Active Server Pages

    67Universidade do Sagrado Corao

    localizao d aos programadores flexibilidade para testar a validade da condio

    primeiro e ento processar o bloco de instrues, ou processar o bloco de instrues

    pelo menos uma vez, e depois avaliar a condio.

    Exemplo:

    O resultado da execuo do cdigo acima pode ser observado na Figura 8.1.

    Figura 8.1: Execuo do comando Do... Until.

  • 7/23/2019 ASP - Curso Completo

    73/121

  • 7/23/2019 ASP - Curso Completo

    74/121

    ASP Active Server Pages

    69Universidade do Sagrado Corao

    While ... Wend

    Outra estrutura similar ao Do ... Loop o While ... Wend. Esta estrutura repete

    um bloco de instrues at que um condio seja satisfeita (true).

    Sintaxe:

    While

    Wend

    Onde uma expresso que pode ser avaliada como verdadeira ou

    falsa (true/false) e representa o conjunto de comandos que

    devem ser executados at que a condio seja falsa.

    Quando a condio descrita no While for verdadeira todos os comandos seroprocessados at chegar no Wend. Neste ponto, o fluxo do programa passa para o

    While que testa a condio novamente e este ciclo repetido at que a condio seja

    falsa.

    Exemplo:

    O exemplo a seguir incrementa a varivel contador at que seu valor chegue a

    10.

    Contei at

    O resultado da execuo do cdigo acima pode ser observado na Figura 8.2.

    Cdigo

    While contador < 10 Avalia a condio

    contador = contador + 1 Incrementa a varivel contador

  • 7/23/2019 ASP - Curso Completo

    75/121

    ASP Active Server Pages

    70Universidade do Sagrado Corao

    Wend Finaliza o lao quando a varivel contador for igual a 9.

    Figura 8.2: Execuo do comando While... WEnd.

    For ... NextRepete um conjunto de instrues por um nmero especificado de vezes. Este

    comando usado quando conhecido o nmero de ciclos ou iteraes que so

    necessrias.

    Sintaxe:

    For contador = inicio To fim [Step passo]

    [bloco de instrues]

    [Exit For]

    [bloco de instrues]Next

    Onde contador uma varivel numrica usada no lao como o contador. Esta

    varivel no pode ser um elemento de um vetor, nem um elemento de um Tipo

    definido pelo usurio. Inicio o valor inicial do contador e fim o valor final que o

    contador assumir. Passo define o valor do incremento ou decremento do FOR, se

    no for definido, o default 1 (um).

    O valor do parmetro passo pode ser tanto positivo (incremento) ou negativo

    (decremento). O valor deste parmetro determina o processo da seguinte maneira:

  • 7/23/2019 ASP - Curso Completo

    76/121

    ASP Active Server Pages

    71Universidade do Sagrado Corao

    Permanece no lao se ...

    Positivo ou 0 (zero) ?contador = fim

    Exemplo

    Se o parmetro passo for positivo:

    O resultado ser igual a: ACEGIKMOQSUWY[]_acegikmoqsuwy

    For contador = 65 to 122 step 2

    No exemplo, a varivel contador inicializada com o valor 65, sendo

    incrementada at 122. O incremento feito de 2 em 2, ou seja, a primeira vez, a

    varivel contador est com 65, a segunda vez, o contador passa a ter 67, pois o

    incremento de 2.

    Se o parmetro passo for negativo:

    O resultado ser igual a:

    zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA

    For contador = 122 to 65 step -1

    Neste exemplo, o parmetro passo foi determinado com 1, ou seja, o contador

    comea com 122 e a cada clico, decrementado deste valor 1 at chegar ao valor 65.

    Observe que o operador Next no VBScript difere do operador Next do VB. No

    VBScript, no preciso especificar o contador na declarao do Next, como acontece

    no VB. O operador Next automaticamente incrementa o contador designado na

    declarao do FOR. Adicionando o nome da varivel contador na clusula Next, um

    erro ser gerado pelo VBScript.

    Em FOR encadeados, no permitido a utilizao do mesmo nome de

    varivel. Um erro de run-time ser gerado. Por exemplo, o cdigo abaixo utiliza dois

    FOR encadeados, com o mesmo nome de varivel, o VBScript ir gerar um erro.

  • 7/23/2019 ASP - Curso Completo

    77/121

    ASP Active Server Pages

    72Universidade do Sagrado Corao

    Resumo

    ? ?As estruturas de deciso so utilizadas para determinar o fluxo da

    aplicao. As estruturas mais utilizadas so:

    If then

    else

    end if

    Select

    [Case ValorX-Condio

    [bloco de instruo]]

    [Case Else ValoresN-CondioN[Bloco de instruo]]

    End Select

    ? As estruturas de repetio so utilizadas para executar um bloco de

    instruo at que uma condio seja satisfeita. As estruturas mais

    utilizadas so:

    Do Until

    Loop

    While

    Wend

    For contador = inicio To fim [Step passo]

    [bloco de instrues]

    [Exit For]

  • 7/23/2019 ASP - Curso Completo

    78/121

    ASP Active Server Pages

    73Universidade do Sagrado Corao

    [bloco de instrues]

    Next

  • 7/23/2019 ASP - Curso Completo

    79/121

    ASP Active Server Pages

    74Universidade do Sagrado Corao

    9. Os objetos do ASP

    O ASP possui alguns objetos bsicos que operam as funcionalidades de uma

    aplicao. Cada objeto possui seus prprios mtodos e eventos, por isso ser

    abordado cada um deles separadamente, observando suas funes mais importantes

    e teis.

    O objeto Application

    Pode-se entender como sendo aplicao todo o conjunto de pginas ASP e

    HTML que formam o programa como um todo. Uma aplicao comea quando uma

    pgina ASP requisitada pela primeira vez ao servidor e termina quando o servidor

    desligado ou quando desativada (tirada do uso, sendo apagada, por exemplo).

    Desta forma, o objeto Application ir referir-se e estar disponvel para toda a

    aplicao, ou seja, ser "enxergado" por toda pgina ASP e por qualquer usurio daaplicao.

    Qual a utilidade de um objeto Applicat ion?

    Devido a mltiplos acessos a uma aplicao, possvel, atravs do objeto

    Application, controlar possveis erros causados por tentativas de alteraes

    simultneas de variveis, como tambm disponibilizar determinadas informaes que

    sero acessveis em qualquer parte do programa, e/ou por qualquer usurio.

    Declarando variveis Application

    VariveisApplicationpodero ser acessadas por qualquer parte do programa,

    por qualquer usurio.

    Sintaxe:Application("nomevar") = contedo

    Para visualizar melhor o efeito de uma varivel deste tipo, veja o exemplo:

    Suponha a existncia da linha de cdigo acima em algum arquivo ASP de uma

    aplicao. Com ela, ser armazenada a string "Que tal estudar ASP?" em uma

    varivel Application que chamada de DicaDeHoje . Se nesta mesma aplicao existir

    outra pgina ASP com o cdigo:

    A dica do dia hoje

  • 7/23/2019 ASP - Curso Completo

    80/121

    ASP Active Server Pages

    75Universidade do Sagrado Corao

    Qualquer usurio que acessar a pgina acima obter o visto na Figura 9.1.

    Figura 9.1: ObjetoApplication

    Importante tambm lembrar que possvel acessar a varivel DicaDeHoje em

    qualquer outra parte da aplicao.

    Controle de acesso a variveis Applicat ion

    Para prevenir eventuais problemas com alteraes simultneas de valores de

    variveis do tipoApplication, mantendo deste modo os dados sempre consistentes,

    necessrio lanar mo de dois mtodos deste objeto: locke unlock.

    Mtodo Lock

    O objetivo deste mtodo "trancar" o acesso s variveis Application,

    deixando-as disponveis para somente um nico usurio.

    Mtodo UnLock

    O mtodo UnLock"destranca" as variveisApplicationque foram trancadas por

    um mtodo Lock. Quando este mtodo for executado, todas as variveis Applicationestaro novamente disponveis.

  • 7/23/2019 ASP - Curso Completo

    81/121

  • 7/23/2019 ASP - Curso Completo

    82/121

    ASP Active Server Pages

    77Universidade do Sagrado Corao

    Este mtodo cria uma instncia de um componente no servidor. A capacidade

    de utilizar componentes amplia muito as potencialidades de uma aplicao ASP.

    Sintaxe: Server.CreateObject ("nomecomp.nomeclasse")

    Onde nomecomp o nome da biblioteca do componente e nomeclasse a

    classe desta biblioteca da qual se deseja criar o objeto.

    Como exemplo, ser demonstrada a criao uma instncia da classe

    BrowserType, da bibliioteca MSWC (Microsoft Web Components):

    Este browser suporta controles ActiveX

    Este browser no suporta controles ActiveX

    Na Figura 9.2, pode ser visto o resultado do cdigo acima.

    Figura 9.2: Objeto Server

  • 7/23/2019 ASP - Curso Completo

    83/121

    ASP Active Server Pages

    78Universidade do Sagrado Corao

    No exemplo acima, foi criado o objeto brtp, pertencente classe BrowserType

    da biblioteca MSWC e testada sua propriedade ActiveXControls. Observe que o

    comando Set foi utilizado. Desta forma, o mtodo CreateObjectretornar varivel

    brtp um ponteiro que aponta para o objeto instanciado. Este apenas um exemplo de

    um objeto de inmeros outros existentes. Certamente ao pesquisar na Web, muitos

    outros componentes podem ser encontrados, pois eles esto constantemente sendo

    criados.

    Mtodos Encode

    A tecnologia Web basicamente baseada na transferncia de textos simples

    (ASCII) pelo protocolo TCP/IP e na interpretao destes textos pelos browsers. Devido

    a este fato, possvel ocorrerem erros de interpretaes de caracteres peculiares(como letras acentuadas ou espaos em branco, por exemplo). Para resolver estes

    problemas, a tecnologia ASP dispes de dois mtodos: HTMLEncode e URLEncode.

    Mtodo HTMLEncode

    Este mtodo faz com que os caracteres sejam exibidos em tela exatamente

    como foram especificados. Para isso o ASP cria, para a string fornecida, cdigos

    especiais para caracteres no-ANSI. Este mtodo importante para se assegurar de

    que a informao ser exibida na pgina HTML exatamente como se deseja.Sintaxe: Server.HTMLEncode ("string")

    Onde string a cadeia de caracteres que se deseja formatar.

    Mtodo URLEncode

    Semelhante ao mtodo HTMLEncode, este mtodo formata a string

    especificada para que no ocorram erros de interpretao de caracteres