ASP – Active Server Pages Prof. Sérgio Rodrigues ASP (Active Server Pages) É um ambiente de programação por scripts que rodam no servidor: IIS – Internet Information Services PWS – Personal Web Server Utiliza o VBScript como linguagem default; Possibilita a construção de páginas dinâmicas e interativas com bancos de dados. 2 1 Arquitetura 1. 2. 3. 4. O usuário web (Web Browser) faz uma requisição .asp; O Servidor Web (Web Server) abre o código e executa os scripts nele inseridos; Para acessar o Banco de Dados, outras tarefas usando Objetos e Componentes são executadas ao lado do servidor; A página HTML é gerada e transmitida para o navegador do usuário sem que ele tenha conhecimento de como foi gerada. 3 Arquitetura 4 2 Vantagens Suporte de navegação nos Browsers Proteção ao código fonte Como o ASP é processado pelo servidor, o que o cliente (browser) recebe é somente o código HTML padrão. Como o servidor retorna somente o resultado HTML, o código fonte fica preservado. Banco de Dados Uma aplicação ASP pode ser usada com diversos banco de dados: Access, SQL Server, Oracle, MySQL, etc. 5 Scripts Um script em ASP é identificado pelos delimitadores <% %>. Entre eles podem haver várias instruções, vejamos o exemplo: <HTML> <HEAD> <TITLE>Teste 1 para ASP</TITLE> </HEAD> <BODY> <P> Isso é um teste de script. <% strNome = “João” %> <P> O nome do sujeito é <B> <% = strNome %> </B> </BODY> </HTML> 6 3 Simbologia <% início do trecho de código ASP %> final do trecho de código ASP ' (aspas simples) usada antes de comentários dentro do código = é usado no modo de programação por mesclagem de códigos HTML e ASP (<%=) 7 Simbologia <html> <head> <title>Como funciona o ASP?</title> </head> <body> <p>Teste no HTML!</p> <% ‘Comentarios sao precedidos de aspas simples. response.write "<p>Usando o response.write do ASP</p>" %> <p><%=“Teste mesclagem HTML x ASP..."%></p> </body> </html> 8 4 O objeto Response Refere-se aos dados enviados do servidor para o cliente (usuário - browser). response.write - envia textos ao browser. É interessante na construção de textos que mixam textos prontos e variáveis. response.redirect - redireciona o browser para um endereço especificado. response.buffer - avisa o browser do usuário que a página só deverá ser mostrada após ser totalmente carregada. É interessante para usar com a função response.redirect. response.cookies - grava informações no cookie do browser. 9 Response.write Sintaxe: response.write texto/variável <html> <head><title>response.asp</title></head> <body> <% response.write "Olá!!! Abaixo uma rotina com o objeto response.write cujo texto varia de acordo com a variável counter<br>" for counter=1 to 500 response.write counter & "->" next %> </body> </html> 10 5 Response.redirect Sintaxe: response.redirect(URL) <% 'A função response.redirect redireciona o browser do cliente para o endereço contido na variável URLnova, no caso, www.globo.com. URLnova = "http://www.globo.com" response.redirect(URLnova) %> <html> <head><title>response.asp</title></head> <body> Será que este texto irá aparecer?! </body> </html> 11 Response.buffer Sintaxe: response.buffer = true/false <%response.buffer = true%> <html> <head><title>response.asp</title></head> <body> <% response.write "Olá novamente! Abaixo o uso da função response.buffer, a qual, quando tiver o valor true, avisa o browser para mostrar as informações só depois de totalmente carregadas. Isto permite que haja um response.redirect em qualquer parte da página. Entretanto, quando tiver o valor false, o browser mostra as informações assim que elas vão chegando." response.redirect(http://www.globo.com) %> </body> </html> 12 6 Response.cookies Sintaxe: Response.Cookies(“<variável>”) = “<valor>” <html> <head><title>cookies</title></head> <body> <% response.write "Exemplo simples de utilizacao de cookies" response.cookies(“usuarioLogado") = “João da Silva” %> </body> </html> 13 Objeto Request Refere-se a todos os dados requisitados pelo servidor ao cliente (browser do usuário). request.Form - recupera valores de variáveis enviadas via formulário pelo método post. request.QueryString - recupera valores de variáveis enviadas via url / formulário pelo método get. request.cookies - recupera informações do cookie do browser do usuário. 14 7 Resquest.Form Sintaxe: request.form("nomedavariavel") <html><head><title>Formulário</title></head><body> <form method="post" action="exemplo8.asp"> Nome: <input type="text" name="nome"><br> Endereço: <input type="text" name="endereco"><br> <input type="submit" value="enviar"> </body></html> exemplo8.asp <html><head><title>Recuperação dos dados</title></head> <body> Abaixo, nome e endereço do usuário que preencheu o formulário:<br> <% response.write "Nome=" & request.form("nome") & "<br>" response.write "Endereço=" & request.form("endereco") %> </body></html> 15 Request.QueryString Sintaxe: request.querystring("nomedavariavel") <html><head><title>Formulário</title></head><body> <form method=“get" action="exemplo10.asp"> Nome: <input type="text" name="nome"><br> Endereço: <input type="text" name="endereco"><br> <input type="submit" value="enviar"> </body></html> exemplo10.asp <html><head><title>Recuperação dos dados</title></head> <body> Abaixo, nome e endereço do usuário que preencheu o formulário:<br> <% response.write "Nome=" & request.querystring("nome") & "<br>" response.write "Endereço=" & request.querystring("endereco") %> </body></html> 16 8 Request.QueryString Passando parâmetros pela URL <html> <head> <title>Recuperação dos dados</title> </head> <body> Passando as informações na própria URL:<br> <% response.redirect("exemplo10.asp?nome=Carlos&endereco=R ua do Ouvidor, 114") %> </body> </html> 17 Request.Cookies sintaxe: request.cookies("nomedocookie") <html> <head><title>Cookies</title></head> <body> <% response.write "Recuperando o valor do Cookie<br><br>" %> Usuário:<%=request.cookies("usuarioLogado")%> </body> </html> 18 9