Baixe apostila asp3 e outras Notas de estudo em PDF para Gestão de Recursos Humanos, somente na Docsity!
Programação com
ASP – Active
Server Pages
Alexandre Malheiros Meslin
Maurício Bomfim
Novembro / 2005 Núcleo de Computação Eletrônica da UFRJ
Programação 2
ASP - Referências
• Bibliográficas
- Active Server Pages Unleashed, Sams Publishing
- Aprenda em 24 horas Active Server Pages, Ed. Campus
• Na internet
- http://equipe.nce.ufrj.br/mauricio/asp/
- http://www.w3schools.com/asp
- http://www.w3schools.com/ado
- http://www.devguru.com/Technologies/asp/quickref/asp_intro.html
- http://msdn.microsoft.com/library/default.asp?url=/library/en- us/dnanchor/html/activeservpages.asp
Parte 1
Programação 4
O que é ASP?
- ASP significa Active Server Pages.
- ASP não é uma linguagem: normalmente são
utilizadas VBScript ou Jscript.
- ASP é um mecanismo que permite a execução de
scripts dentro do IIS.
- IIS significa Internet Information Services.
- IIS é um componente gratuito do Windows a partir do
Windows 2000.
- O Windows XP Home Edition não suporta IIS nem
PWS, apenas o XP Professional.
- PWS é uma versão menor do IIS, com quase toda a
sua funcionalidade, usado no Windows 95/98.
Programação 5
Compatibilidade com ASP
- ASP é uma tecnologia da Microsoft
- Para rodar IIS é necessário Windows NT 4.0 ou mais
recente ou Windows 2000 ou mais recente
- Alternativas para rodar ASP sem Windows:
- ChiliASP / Chilisoft
- InstantASP / Halcyon Software
O Que é um Arquivo ASP?
- Um arquivo ASP é um texto puro, assim como
arquivos HTML
- Um arquivo ASP pode conter texto, HTML, javascript,
XML e scripts ASP
- Scripts ASP são executados no servidor
- Um arquivo ASP tem extensão ".asp"
Programação 10
Processamento de scripts no servidor
- Permite acesso a bancos de dados ou arquivos de
dados localizados no servidor
- Permite maior segurança, uma vez que o código ASP
não pode ser visto pelo browser;
- Compatível com qualquer browser, uma vez que o
cliente só recebe html.
Programação 11
O que se pode fazer com ASP? (I)
- Criar páginas mais dinâmicas
- Conteúdos aleatórios;
- Apresentação páginas personalizadas de acordo com seleções anteriores do usuário;
- Responder a consultas ou envio de dados de páginas HTML.
- Implementar aplicações com interface Web
- Acessar bancos de dados e retornar o resultado como html;
- Manter contexto entre requisições diferentes de um mesmo usuário;
- Criar variáveis da aplicação, compartilhadas por todos os usuários;
- Enviar mensagens de e-mail automáticas;
- Exemplo: comércio eletrônico
O que se pode fazer com ASP? (II)
- Implementar sites de “conteúdo dinâmico”
- Gerenciamento de conteúdo;
- Publicação on-line;
- Útil para sites de Notícias, Intranets, etc.
Programação 13
VBScript (I)
- Linguagem desenvolvida pela Microsoft baseada no
Visual Basic
- Originalmente concebida para concorrer com o
Javascript em aplicações client-side
- Estende o HTML:
- Variáveis, operadores, expressões
- Condições, laços, funções, sub-rotinas
- Permite a criação de programas simples
- É interpretada
- Simplicidade da linguagem X Complexidade no
desenvolvimento
Programação 14
VBScript (II)
- Adotada posteriormente como principal linguagem
de desenvolvimento de Active Server Pages
- Alternativas: JScript, Perl, REXX, Python
VBScript (III)
- Client-side Scripting
- Executada no browser
- Distribui o processamento
- Só funciona no Internet Explorer
- Server-side Scripting -> ASP
- Executada no servidor web
- Concentra o processamento
- Só funciona em servidor Windows (IIS / PWS)
- Envio de puro HTML ao cliente
Programação 19
Exemplo usando Jscript
<%@ LANGUAGE=JScript %>
Asp Script
Esta é uma frase <% for (i=1; i<11; i++) { %> muito, <% } %> muito comprida.
Programação 20
Exemplo usando a Tag SCRIPT
<% Option Explicit %>
Asp Script
<% digaAlo () %>
Criando Variáveis – Escalares
<%@ LANGUAGE=VBScript %>
<% Option Explicit %>
Dim nome
nome="Alexandre Meslin"
response.write "Meu nome é: " & nome
Programação 22
Criando Variáveis – Vetores
<%@ LANGUAGE=VBScript %> <% Option Explicit %>
<% Dim nome(4), i nome(0) = "Alexandre" nome(1) = "Denise" nome(2) = "Amanda" nome(3) = "Ana" nome(4) = "Gisele" For i = 0 to 4 response.write(nome(i) & "" & VBCRLF) Next %>
Programação 23
Intercalando ASP dentro de tags HTML
**<%@language=VBSCript%> <%Option Explicit%>
<% Dim i For i = 1 to 6 response.write "Cabeçalho"&i&"" Next %>
**
Inclusão de arquivos
- Útil para:
- Definir elementos comuns a várias páginas (cabeçalhos, rodapés, etc)
- Definir funções que serão utilizadas a partir de várias páginas.
Caminho relativo
Programação 28
if-then-elseif-else-end if
if then
[elseif then
]
[else
]
end if
If hora < 12 then response.write “bom dia” Elseif hora < 18 then response.write “boa tarde” Else response.write “boa noite”
Programação 29
select-case-case-case else-end select
select case [case ] [case else ] end select
Select case hora Case 0,1,2,3,4,5,6,7,8,9,10, response.write “bom dia” Case 12,13,14,15,16, response.write “boa tarde” Case else response.write “boa noite” End select
for-to-next
for = to
instruções
Next
For I = 0 to 50 response.write I Next
Programação 31
for-to-step-next
for = to
[step ]
instruções
Next
For I = 0 to 50 step 2 response.write I Next
For I = 50 to 0 step - response.write I Next
Programação 32
while-wend
while
Wend
I = 0
While I <= 50 response.write I I = I + 2 Wend
do-while-loop
do while
instruções
Loop
I = 0
Do while I < 50 response.write I I = I + 1 Loop
Programação 37
do-loop while
do
instruções
Loop while
I = 0
Do response.write I I = I + 1 Loop while I < 50
Programação 38
do-exit do-loop while
do
instruções
[exit do]
loop while
I = 0
Do response.write I I = I + 1 if I > 25 then exit do end if Loop while I < 50
do-loop until
do
instruções
Loop until
I = 0
Do response.write I I = I + 1 Loop until I < 50
Programação 40
do-exit do-loop until
do
instruções
[exit do]
Loop until
I = 0
Do response.write I I = I + 1 if I > 25 then exit do end if Loop until I > 50
Programação 41
for-each-in-next
For each in
Next
For each item in request.form response.write request.form(item) Next
for-each-in-exit for-next
For each in
[exit for]
Next
For each item in request.form response.write request.form(item) if request.form(item) = 5 then exit for end if next
Programação 46
Integrando Objetos nas ASP
- ASP tem um conjunto de objetos embutidos.
- Objetos possuem métodos, propriedades e coleções.
- Métodos determinam o que se pode fazer com o objeto.
Ex: Response.Write “Alo...”
- Propriedades podem ser modificadas para especificar o
estado do objeto.
Ex: Session.Timeout = 10
- Coleção é uma estrutura de dados que permite armazenar
conjuntos de pares (chave/valor) relacionados ao objeto.
Ex: nome = Request.Form (“Nome”)
Programação 47
Objetos existentes
- ASP Object Model
- Request
- Response
- Session
- Server
- Application
- ASPError *
- Somente no ASP3.0 / IIS 5.
(SCRRUN.DLL)
- FileSystem
- TextStream
- Drive
- File
- Folder
- Dictionary
ASP Object Model
Programação 49
Objeto Request
- Objeto que corresponde a um pedido do protocolo
HTTP
- Permite que o programa ASP receba dados do
usuário
- Exemplo:
- nome = Request.Form ("NOME")
- Formulario.htm
Programação 50
Os métodos GET e POST
- São duas formas definidas pelo protocolo de
comunicação para o envio de dados ao servidor.
- Formulários HTML podem enviar dados usando GET
ou POST:
- O programa ASP deve tratar de maneira diferente os
dados que ele recebe, dependendo do método
utilizado.
Os métodos GET e POST
- Método GET:
- O cliente envia o conteúdo do formulário
concatenado ao nome da URL, após uma '?'.
- Método POST:
- O cliente envia a URL, e envia os dados do
formulário separadamente como um header HTTP.
Programação 55
Os métodos GET e POST
- Método POST:
- O servidor coloca a informação disponível para a
aplicação através da coleção Request.Form.
Programação 56
Formulário – Método Post
Por favor, digite o seu nome:
Formulário – Método Post
**<%@language=VBSCript%>
<% If Request.Form("nome")<>"" Then Response.Write "Oi " & Request.Form("nome") & "!" Response.Write "Como está você hoje?" Else Response.Write "Você não preencheu o seu nome." End If %>
**
Programação 58
Os métodos GET e POST
- Quando usar GET ou POST?
- GET não deve ser usado com formulários muito grandes.
Limite de caracteres da QueryString…
- GET: O conteúdo digitado pode ser visto no campo
“location” do navegador. Cuidado com a segurança…
- GET: Pode ser chamado sem o uso de um formulário. telefone
Programação 59
Os métodos GET e POST
- Codificação dos parâmetros:
- A sintaxe utilizada é:
- nome1=valor1&nome2=valor2&nome3=valor3& ...
- Os nomes de cada campo são definidos no próprio código
HTML, e os valores são os conteúdos de cada campo, que
foram digitados pelo usuário.
- Espaços são substituídos por '+' e alguns caracteres
especiais são representados em notação hexadecimal
como '%XX'.
- Em ASP não precisamos nos preocupar com essa
codificação pois o servidor já decodifica todo o formulário,
colocando o dado pronto para ser usado pela aplicação nas
coleções Form e QueryString.
Objeto Request Coleções
- Request.Form
- Obtém dados de formulário
- Request.Form("Campo")[("índice")|.Count]
- Campo: nome do campo
- Índice: para campos com mais do que um valor
- Count: quantidade de valores do campo