Material III-Bimestre Introdução Programação na Linguagem ASP Active Server Page

Preview:

DESCRIPTION

Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Programação p/ Web. Material III-Bimestre Introdução Programação na Linguagem ASP Active Server Page Site : http://www1.univap.br/~wagner Prof. Responsável Wagner Santos C. de Jesus. - PowerPoint PPT Presentation

Citation preview

Universidade do Vale do ParaíbaColégio Técnico Antônio Teixeira Fernandes

Disciplina Programação p/ Web.

Material III-Bimestre

Introdução Programação na Linguagem ASP

Active Server PageSite : http://www1.univap.br/~wagner

Prof. Responsável

Wagner Santos C. de Jesus

2

Introdução a Programação Distribuída

• Tem como objetivo desenvolver ferramentas para aquisição e envio de dados em fontes remotas.

Dados (HTML,Arquivo de Imagens, XML, Dados Relacionais)

Aplicação Java

3

O que faz uma aplicação distribuída?

• Obtém dados de fontes remotasPáginas HTML, arquivos de imagens, dados relacionais e semiestruturados (XML), etc

• Acessa continuamente informações de conteúdo dinâmico.

• Cotação de ações, notícias, monitoramento remoto de sistemas

• Envia dados para fontes remotas Servidores de arquivos, computação massivamente paralela.

4

Servidor de HTTP

• Servidor web: Servidor responsável pelo armazenamento de páginas de um determinado site, requisitados pelos clientes através de browsers.

5

O protocolo HTTP

• (HyperText Transfer protocol) é o protocolo de rede utilizado para entrega virtualmente de todos os arquivos e outros dados sejam eles arquivos HTML, arquivos de imagens, resultados de consulta a banco de dados, arquivo de texto, ou qualquer outro tipo de recurso.

6

Sistema de comunicaçãoArquitetura

Camadas

Aplicação

TCP

IP

REDE

HTTP

Transporte

Protocolo de Internet

1

2

3

4

7

Transações HTTP

Uma transação consiste em:

• Estabelecimento da conexão;

• Requisição (pelo cliente);

• Resposta (pelo servidor);

• Fechamento da conexão.

8

Linha inicial de requisição Método de envio de dados

Método SP URL SP Versão CR LF

Cabeçalho : Parâmetro CR LF

Cabeçalho : Parâmetro CR LF

CRLF

Mensagem

Linha de Requisição

Linhas de cabeçalho

Linhas em banco]

Indica o fim do cabeçalho

URL – (User Resource locator)

9

Linha de resposta (linha de status)

Versão SP Status SP Motivo CR LF

Cabeçalho : Parâmetro CR LF

Cabeçalho : Parâmetro CR LF

CRLF

Corpo da Entidade (Mensagem)

Linha de status

Linhas de CabeçalhosLinha em branco

(HTML)

10

O código de status

• 1xx – Indica uma mensagem de informação apenas.

• 2xx – indica operação de algum tipo bem sucedida.

• 3xx – Redireciona o cliente para uma outra URL.

• 4xx – Indica um erro por parte do cliente

• 5xx – Indica um erro por parte do servidor

Conceitos para um código em ASP(Active Server Page - Página de Servidor Ativa)

Um código escrito na linguagem ASP roda

sempre no servidor nunca no cliente.

ASP- vem a ser um aplicativo que roda com a

linguagem Vbscript. Embutida na estrutura de

um código em HTML.

Servidor de HTTP (IIS)

Para executarmos uma aplicação em ASP

precisamos Ter instalado na máquina um

aplicativo denominado IIS (Internet Information Server). Esse aplicativo permite que a máquina seja transformada em um servidor web para execução de scripts e acesso a banco de dados.

Diagrama de Funcionamento (Página com ASP - PWS)

Obs : Todo programa ASP tem como saída um código HTML.

Procedimento para gravação e execução de páginas com ASP.

Observação : Todos os programas em ASP

devem ser colocados no diretório criado pelo

servidor que tem como padrão o nome

c:\Inetpub\wwwrot.

Para executar uma página devemos usar o

mesmo procedimento que usarmos para uma

página contida no servidor exemplo

http://localhost/nome.asp ou HTML.

Operadores da Linguagem ASP

Comandos Básico da linguagem ASP.

<% - %>- Vem a ser um comando

fundamental para se escrever um código de

script em ASP, permite que o servidor consiga

diferenciar o código HTML do código ASP.

Obs : Todo código Asp deve ser delimitado

pelos símbolos de Menor porcentagem e

maior porcentagem

Atenção !!!!

Importante : Todo Programa em ASP deve

possuir a extensão ( .asp ), caso contrário

não será identificado na sua execução.

Estrutura de um programa em ASP.

<HTML><HEAD> <TITLE>Estrutura-ASP</TITLE></HEAD><BODY>

:

: <%

<Código de Programa> %>

:

:

</BODY>

</HTML>

Estruturas Básicas de controle.

•Atribuição

• Condição

• Repetição

Criando variáveis

Sintaxe :

Dim <NomeVariável>

Exemplo : Criação e atribuição de valores

:

:

<%

dim a

a = 10

%>

:

:

& - O operador e comercial concatena duas String (Juntando as duas para serem usadas).

Exemplo :

Dim K,Z,Resposta

K = "Aba"

Z = "caxi"

Reposta = K&Z

Saída será a variável resposta = “Abacaxi”.

If /then/else : Comando que permite testar se uma condição é verdadeiro ou falsa.

Sintaxe :

If <condição> then

<Bloco de Instrução-1>

else

<Bloco de Instruções-2>

end if

Exemplo if/then/elseExemplo :

<%

dim x

x = "S" %>

<% if x = "S" or x = "N" then %>

<H1> Valor de x válido !!!! </H1>

<% else %>

<H1> Valor de x Inválido !!!! </H1>

<% End if %>

Saida seria Valor de x Válido escrito em tamanho grande na tela do browser

Select Case : Permite verificar uma lista de expressões.

Sintaxe :

Select Case <VarM>

Case <ListaExp>

<Bloco-Instruções-1>

Case <ListaExp>

<Bloco-Instruções-2>

:

:

Case Else

<Bloco-Instruções>

End Select

Exemplo Select Case

<% dim a a = 0

Select Case a

Case 0 %>

<font size = 10 Face = "Times new Roman" color= "#ff000">

Desligado !!!

</font>

<% Case 1 %> <font size = 10 Face = "Times new Roman" color= "#000ff">

Ligado !!!

</font>

<% Case Else %>

<B> Não é um digito Binário </B>

<% End Select %>

A saída seria Desligado em tamanho 10 escrito em vermelho.

For/Next : Permite criar uma repetição sequencial.

Sintaxe :

For <VarM> = <ExpN1> to <ExpN2> [Step +/- <ExpN3>]

:

: <Bloco-Instruções>

Next

Exemplo : For/NextExemplo :

<B>Você quer Aprender Asp? : </B>

<% dim b

for b = 1 to 100 %> <B>Sim !!!!,</B>

<% Next %>

A saída seria Você quer Aprender Asp: Sim !!!!, Sim !!!!, Sim !!!!, .............

While/Loop : Cria uma repetição condicional para determinado número de instruções.

Sintaxe :

Do While <Condição>

:

: <Bloco-Instruções>

Loop

Exemplo : While/LoopExemplo :

:

:

<B>As poderosas dizem : </B> <% dim b

b = 1 do while b <= 3 %> <B>Oi !!!!,</B> <% b = b + 1%>

<% Loop %>:

:

A saída seria As poderosas Dizem : Oi !!!!, Oi !!!!, Oi !!!!

Do Until : Cria repetição condicional baseada em uma expressão contrária ao While.

Sintaxe :

Do Until <Condição>

:

: <Bloco-Instruções>

Loop

Exemplo : Do UntilExemplo :

<B>Os pokemons dizem : </B>

<% dim b

b = 1 do Until b > 3 %> <B>Oláá !!!!,</B> <% b = b + 1%>

<% Loop %>

A saída seria Os pokemons Dizem : Oláá !!!!, Oláá !!!!, Oláá !!!!

Criando saída de dados no video (Browser).

Response.Write()

Para mostrar a saída de um processamento de

um programa no vídeo devemos usar o objeto

do ASP Response, acompanhado do método

Write. Envia a resposta escrevendo o

resultado no vídeo.

Sintaxe Response.Write.

Sintaxe :

Response.Write <String>

Exemplo : Response.WriteExemplo :

<% dim i,cor for i = 1 to 3 if i = 1 then

cor = "#ff0000" end if

if i = 2 then cor = "#00ff00"

end if if i = 3 then cor = "#0000ff" end if

Response.Write "<font Color="&cor&">Treinamento -

Asp </Font><br>"

next %>

Funções da linguagem ASP.

• Cstr() -Converte um número em String.

• Cint() - Converte um número com casas decimal em um número inteiro.

• Len() - Retorna com a quantidade de caracteres encontrada em uma String.

• Mid() - Retorna com a parte da String Especificada.

Exemplo : CStr()

Dim x,y

x = 34

y = Cstr(x)

O resultado de Y será = "34" como String.

Exemplo : Cint()

Dim x,y

x = 34.5

y = Cint(x)

O resultado de y será = "34" como String.

Obs : Grande parte de conversões de dados de variáveis e seus tipos o Asp irá fazer automaticamente sem a necessidade de funções.

Exemplo : Len()

Dim k,a

a = "Abacaxi"

K = Len(a)

O resultado de K será = 7.

Exemplo : Mid()

Dim k,a

a = "Abacaxi"

K = mid(a,1,3)

O resultado de K será = “Aba”.

Enviando dados de um Formulário para um programa.

<Form Name = <NomeForm> Method=<Nome-Método> Action= <Nome-Script> >

Method : Clausula que especifica que método será

usado para o envio de dados.

Action : Clausula que especifica para que Script

irá os dados do formulário.

Método Get : Envia dados de um formulário para o Script do Servidor. Exibindo os dados a serem enviados.

Obs : Usando o método Get os dados iram aparecer no location de seu Navegador.

Sintaxe :

< Form Name = <NomeForm> Method="Get" Action=<Nome-Script> >

Exemplo do Método Get

Exemplo :

<form Name = "form1" Method="Get" Action="Cadastro.asp">

Obs : Os dados enviados pelo método Get irão aparecer da seguinte maneira

Location do Navegador

http://localhost/formul.html?Nome=Tamara&Endereco=Rua+das+Cove

Significado dos Símbolos :

? - Separa o endereço web do nome dos campos do formulário.

= - Indica os dados que foram escritos pelo usuário no campo.

& - Separação de termino de um campo inicio de outro.

+ - Indica a separação dos dados escritos por espaços em branco.

Exemplo de dados Enviados pelo método Get :

Obs : A declaração do método deverá ser

feita sempre em um formulário.

Exemplo do Código representado pelo desenho anterior.

<HTML><HEAD> <TITLE>Envia Dados</TITLE></HEAD>

<BODY>

<form Name = "form1" Method="Get” Action="Cadastro.asp"> Nome: <input type="text" Name="Nome"><br> Endereco: <input type="text" Name="Endereco"><br> Enviar <input type="SUBMIT" value="Enviar"><br> </form>

</BODY>

</HTML>

Obs : Para Enviar dados de um formulário é necessário que troquemos a

propriedade Button da clausula type do comando <Input> por Submit.

Método Post : Envia dados de um formulário para o Script do Servidor. Não exibindo os dados a serem

enviados.

Obs : Usando o método Post os dados não iram aparecer no location de seu Navegador.

Sintaxe :

< Form Name = <NomeForm> Method=“Post” Action=<Nome-Script> >

Exemplo do Método Post

Exemplo :

<form Name = "form1" Method="Post" Action="Cadastro.asp">

Variáveis do Padrão CGI

CGI - Vem a ser um padrão de especificação de

programas para web cujo significado da sigla é

(Common Gateway Interface ) Interface

Comum entre os portais(Comunicação). Uma

especificação de um CGI é padrão para

qualquer servidor web, para isso existem

variáveis para podermos pegar informações

vindas de um servidor em tempo de execução

de um programa.

Exemplo das variáveis CGI.

Request.ServerVariables() - Capturando os valores das variáveis CGI.

Para Captura as informações enviadas pelas

variáveis CGI por intermédio de um servidor

HTTP usamos o objeto Request seguido pelo

método ServerVariables().

Request.ServerVariables().

Capturando os valores das variáveis CGI.

Sintaxe :

<varm> = Request.ServerVariables(<Nome-Variável>).

Exemplo : Request.ServerVariables()

Exemplo :

<%

dim resposta

resposta = Request.ServerVariables("SCRIPT_NAME")

Response.Write resposta & "<BR>"

%>

O resultado desse programa será o nome do programa(ASP) que estará

sendo executado com script acima.

Request.Form() : Captura dados enviados para o script pelo formulário.

Sintaxe :

<Varm> = Request.Form(<Nome-campo-Formulário>)

Exemplo : Request.Form()Exemplo :

<%

Dim Lnome,LEndereco

Lnome = Request.form("Nome") Lendereco = Request.form("Endereco")

Response.Write Lnome & "<br>"

Response.Write Lendereco

%>

Código do formulário (Teste.html)

<HTML><HEAD> <TITLE>Exemplo-ASP</TITLE></HEAD><BODY> <form Name = "form1" Method="Post" Action="Tabuada.asp"> Valor : <input type="text" Name="valor"><br>

<input type="SUBMIT" value="Calcular"><br> </Form>

</BODY></HTML

Código do Script em ASP (Tabuada.asp)

<HTML><HEAD> <TITLE>Exemplo-Código-ASP</TITLE></HEAD><BODY> <%

dim lvalor lvalor = Request.form("valor")

for i = 1 to 10 t = lvalor * i

Response.Write lvalor &"*"& i & "="& t&"<br>"next

%></BODY></HTML>

Estrutura de Banco de Dados (ASP)

Conceito :

Um banco de dados é uma coleção de informações relacionadas a um determinado assunto ou finalidade.

GERENCIADOR DE BANCO DE DADOS

Tem como base o processo de classificar, relatar, adquirir e modificar os dados concebidos em seu interior.

Alguns Gerenciadores de Banco de Dados ( SQL-Server, Informix, Fox-pro, Oracle, Paradox, Access......).

FUNDAMENTOS BÁSICOS DA ESTRUTURA DE UM (BANCO DE DADOS).

Um Banco de Dados é constituído por um formato padrão que deve ser respeitado como um conceito de Tabela e Registros.

Estrutura Básica de Banco de Dados.

- Os Conjunto de Dados formam os Campos

- Os Conjuntos de Campos Formam Registros

- Os Conjuntos de Registros Formam as Tabelas ou (Arquivos).

- Os Conjuntos de Tabelas (Arquivos) formam os Bancos de Dados.

Exemplo de Tabela

Usando a Linguagem de Manipulação de Dados. (SQL)

A linguagem SQL (Structure Query Language) Linguagem de Estrutura de Consulta. Possibilita uma estrutura única de comandos que podem ser usados em qualquer Banco de Dados do Mercado com maior rapidez e eficiência na escrita de códigos de operações básicas de manipulação de dados.

Comando Básicos da Linguagem SQL.

• Select - Pesquisa dados de uma Tabela.

• Update - Modifica dados de uma Tabela.

• Insert - Insere dados em uma Tabela.

• Delete - Apaga dados de uma Tabela.

Sintaxe :

Select [*/All/Distinct][<Campos-Tabela>] From [<Nome-Tabela>] Where [<Condição>]

Exemplo :

Select Nome,Endereco From Cadastro Where nome = ‘Jorge Mauro’

Sintaxe :

Update <Nome da Tabela> set <nome-do-campo> = <Constante> [Where <Condição>]

Exemplo :

Update CadAlunos set nomeAluno = ‘Maria da Coves’ Where Codigo = ‘001’

Sintaxe :

Insert into <Nome-Tabela>[( <Nome-dos-Campos> )] Values(<Lista de Campos>)

Exemplo :

Insert Into CadAlunos (Nome,Endereco) Values( 'Marta Cunha','Rua Siqueira Campos,3' )

Sintaxe :

Delete From <Nome-da-Tabela> [Where <Condição>]

Exemplo :

Delete From CadAlunos Where nome = ‘Maria das Coves’

Criando uma Tabela no Gerenciador de Banco de Dados do Access.

Observação :

Ao criar uma tabela em um banco de dados é necessário que se crie no diretório onde esta o banco de

dados do servidor. (c:\Inetpub\wwwroot\CadAlunos.mdb)

Diagrama que demonstra Conexão do servidor de banco de dados com a linguagem

ASP.

Siglas de Objetos de acesso B.D.

ADO - (ActiveX Data Objects) é quem fornece a interface entre o banco de dados e o ASP.

OLE-DB - (Object Linking and Embedding Database) - Permite que qualquer Banco de dados possa ser conectado com ASP.

ODBC - (Open DataBase Connectivity) - Permite que os dados possam ser reconhecidos pelo servidor e o cliente.

Acessando um Banco de Dados em ASP (Usando Access)

Para isso é necessário fazer uma conexão ADO em seguida a ligação do drive de ODBC com banco de dados. Isso se da por intermédio do comando set.

Sintaxe :

set <Variável ADO> = Server.CreateObject(<Tipo de Conexão>)

Exemplo :

Set Db = Server.CreateObject("ADODB.Connection")

Abrindo um Banco de Dados através de uma conexão ODBC.

Método : Open

Sintaxe :

<Variável ADO>.Open <Especificação Caminho;Driver>

Exemplo :

Db.Open "DBQ=C:\inetpub\wwwroot\Banco.mdb;Driver={Driver para o Microsoft Access (*.mdb)};"

Obs : Desse momento em diante qualquer tabela desse banco de dados poderá ser acessada via programa ASP.

Atenção : O procedimento de se montar uma instrução SQL para qualquer tipo de operação em uma tabela de um Banco de Dados é denominado (Query) Consulta.

Criando uma consulta em um programa ASP. Uso do SELECT.

Exemplo :

.......

Dim Query

Query = "Select * from teste where numero = 'Maria das Coves'"

......

Manipulação de Arquivo.

Método Execute() : Permite executar um comando SQL colocado na variável String determinada.

Método Execute()

Sinatxe :

Set <Variável-de-Registro> = <Objeto-Dados>.Execute(<String>)

Exemplo :

Set RecSet = Db.Execute(Query)

Métodos de Deslocamento do Ponteiro em um Arquivo e Localização de Fim de Arquivo.

• EOF - Final do Arquivo

• MoveNext - Próximo Registro

• MoveFirst - Primeiro Registro

Método Eof - Retorna True se caso o ponteiro estiver no final do arquivo e False caso contrário

Exemplo :

<%

if RecSet.Eof then %>

<Script Language = JavaScript> alert("Final de Arquivo Encontrado !!!") </Script>

<%End If %>

Método MoveFirst - Move o ponteiro para o primeiro registro.

Sintaxe : <Objeto>.MoveFirst

Exemplo :

RecSet.MoveFirst

Método MoveNext - Move o ponteiro para o próximo registro.

Sinatxe :

<Objeto>.MoveNext

Exemplo :

RecSet.MoveNext

Método Close : Fecha a tabela SQL aberta.

Sintaxe :

<Objeto>.Close

Exemplo :

RecSet.Close

Inserindo dados em uma tabela por intermédio do comando Insert.

Exemplo :

<%

Set Db = Server.CreateObject("ADODB.Connection") Db.Open "DBQ=C:\inetpub\wwwroot\Banco.mdb;Driver={Driver para o Microsoft Access (*.mdb)};"

Query = "Insert Into Tabela1(nome) Values('Carlos Henrique')"

Set RecSet = Db.Execute(Query)

%>

Consultando dados em uma tabela comando Select.

Exemplo :<%

Set Db = Server.CreateObject("ADODB.Connection")Db.Open "DBQ=C:\inetpub\wwwroot\Banco.mdb;Driver={Driver para o Microsoft Access (*.mdb)};"

Query = "Select * from teste Where nome= 'Roberta Silva'"Set RecSet = Db.Execute(Query)

If RecSet.Eof then %>

<Script language = "JavaScript"> alert("Nome não Encontrado !!!") </Script>

<% Else

Response.Write RecSet("Nome")

End if

RecSet.Close %>

Obs : Para se fazer referencia a um determinado campo de uma tabela pegando seus dados, use aplicação da seguinte

sintaxe.

Exemplo : RecSet(<String-Campo>)

<String-Campo> - Deve ser o nome do campo da tabela que se deseja pegar seus dados.

Alterando dados de uma Tabela Update.

Exemplo :

<%

Set Db = Server.CreateObject("ADODB.Connection")Db.Open "DBQ=C:\inetpub\wwwroot\Banco.mdb;Driver={Driver para o Microsoft Access (*.mdb)};"

Query="Update CadTeste set nome = 'Maria das Coves' Where Codigo = '001' "

Set RecSet = Db.Execute(Query)

%>

Obs : No exemplo abaixo o registro cujo código é 0001 os dados do campo nome serão alterados para (Maria das Coves).

Recommended