Apostila de Asp - PARTE 5


Abaixo, o código de uma página que armazena um valor numa variável de sessão e 
mostra o total de usuários conectados e o total de visitantes no site. 

<html><head><title>Application e Session</title></head> 
<% Session("variavelqualquer") = "Este valor foi inserido na variável de sessão de 
nome variavelqualquer" %> 
<body> 
<p>Número da Sessão: <%=Session.SessionID%></p> 
Apostila ASP    20 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
<p>Existem no momento <%=Application("usuariosonline")%> usuários 
conectados.</p> 
<p>Total de visitantes no site desde <%=Application("datainicial")%> : 
<%=Application("totaldeusuarios")%></p> 
<p>Abaixo, a string que foi inserida na variavel variavelqualquer</p> 
<p><%=Session("variavelqualquer")%></p>  
<% Session.Abandon %> 
</body></html> 
  
Os  comandos  Lock  e  Unlock  servem  para  garantir  que  somente  um  visitante  estará 
alterando as variáveis por vez. O comando Lock bloqueia a acesso de outros visitantes às 
variáveis,  e  o  Unlock  desbloqueia. 
O  comando  Session.SessionID  retorna  o  valor  do  ID  da  sessão. 
O comando Session.TimeOut determina qual o tempo máximo, em minutos, de inatividade 
do  visitante  até  que  a  sessão  possa  ser  considerada  abandonada. 
O comando Session.Abandon termina a sessão iniciada explicitamente (não é necessário 
esperar o vencimento do TimeOut para considerar a sessão abandonada). 
A  procedure  Application_OnStart  contém  a  rotina  que  será  rodada  quando  o  objeto 
Application  for  iniciado. 
A  procedure  Application_OnEnd  contém  a  rotina  que  será  executada  quando  o  objeto 
Application  for  terminado  (qdo.  o  servidor  for  desligado). 
A procedure Session_OnStart contém o código que será rodado quando uma sessão for 
iniciada. 
A procedure Session_OnEnd contém o código que será  rodado quando uma sessão  for 
terminada (por timeout ou logoff explícito).  

  
Procedures 

Algumas vezes, em programação, uma mesma sequência de códigos precisa ser usado 
constantemente.  Ao  invés  de  copiá-los  toda  vez  que  for  preciso,  pode-se  usar  as 
Procedures. Procedures são caixas pretas, onde vc entra com alguns dados, a caixa preta 
processa, e no caso das Functions, retorna outros valores, de acordo com um algorítimo. 
Existem dois tipos de Procedures, as Subs e as Functions. Observe os  

exemplos abaixo: 

<html><body> 
<% 
Function soma(valor1,valor2) 
If valor1 = "" then valor1 = 0 
If valor2 = "" then valor2 = 0 
soma = valor1 + valor2 
End Function 
'acima, a função denominada soma foi apresentada 
'abaixo, uma chamada à função foi feita. Então a função executa a rotina e retorna 
um determinado valor, no caso 5. 

response.write soma(2,3) 
%></body></html> 
Apostila ASP    21 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
  
Já uma Sub simplesmente executa uma ação, não retornando valor algum.  

<html><body> 
<% 
Sub visualizar_nome(nome) 
response.write "O nome do site é: " & nome 
End Sub 
'acima, a procedure do tipo Sub foi denominada visualizar_nome 

response.write "Qual é o site sobre ASP que oferece Tutoriais, Newsgroups e Links 
a seus visitantes?" 
Call visualizar_nome("ASPBRASIL") 
response.write "<div><a href=www.aspbrasil.com.br>Home</a></div>" 
'acima, o comando Call faz a chamada à Sub visualizar_nome. Como pode-se 
perceber, uma Sub não retorna nenhum valor, e sim executa uma ação. 

%> 
</body></html>  
   
If...Then...Else ; Select Case 

Existem 2 comandos capazes de identificar o conteúdo de uma determinada variável, e de 
acordo com esse valor, executar uma determinada rotina:  
   If...Then...Else 

O comando If...Then...Else possibilita verificar se uma determinada variável está ou não 
de acordo com um critério de seleção. Observe o exemplo abaixo:  

<html><body> 
<%  
variavel_qualquer = hour(now) 
If variavel_qualquer < 19 then 
response.write "Bom Dia" 
Else 
response.write "Boa Noite" 
End if 
'o comando IF...then...Else comparou o valor da variavel variavel_qualquer com um 
determinado valor estipulado (no caso, 19). Se o valor for menor que 19, então 
escreva na tela "Bom Dia". Caso contrário (Else), "Boa Noite"  
%></body></html> 

   Select 
Case 

Apostila ASP    22 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
O comando Select Case permite um maior controle sobre os valores de uma determinada 
variavel. Observe o Exemplo Abaixo:  

<html><body> 
<%  
variavel_qualquer = hour(now) 
Select Case variavel_qualquer 
case 0,1,2,3,4,5,6,7,8,9,10,11,12 
response.write "Bom Dia" 
case 13,14,15,16,17,18,19 
response.write "Boa Tarde" 
case 20,21,22,23,24 
response.write "Boa Noite" 
Case else 
response.write "Este relógio está maluco" 
End Select  
%></body></html> 
observe que o comando Select Case deve ser fechado com o comando End Select. 

If...Then...Else ; Select Case 

Existem 2 comandos capazes de identificar o conteúdo de uma determinada variável, e de 
acordo com esse valor, executar uma determinada rotina:  
   If...Then...Else 

O comando If...Then...Else possibilita verificar se uma determinada variável está ou não  
de acordo com um critério de seleção. Observe o exemplo abaixo:  
<html><body> 
<%  
variavel_qualquer = hour(now) 
If variavel_qualquer < 19 then 
response.write "Bom Dia" 
Else 
response.write "Boa Noite" 
End if 
'o comando IF...then...Else comparou o valor da variavel variavel_qualquer com um 
determinado valor estipulado (no caso, 19). Se o valor for menor que 19, então 
escreva na tela "Bom Dia". Caso contrário (Else), "Boa Noite"  
%></body></html> 
  
Select Case 

O comando Select Case permite um maior controle sobre os valores de uma determinada 
variavel. Observe o Exemplo Abaixo:  

<html><body> 
<%  
variavel_qualquer = hour(now) 
Select Case variavel_qualquer 
Apostila ASP    23 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
case is > 0 and qualquer_variavel < 12 
response.write "Bom Dia" 
case os > 12 and qualquer_variavel < 19 
response.write "Boa Tarde" 
case > 19 and qualquer_variavel < 24 
response.write "Boa Noite" 
Case else 
response.write "Este relógio está maluco" 
End Select  
%></body></html> 
observe que o comando Select Case deve ser fechado com o comando End Select. 

If...Then...Else ; Select Case 

Existem 2 comandos capazes de identificar o conteúdo de uma determinada variável, e de 
acordo com esse valor, executar uma determinada rotina:  
  
If...Then...Else 

O comando If...Then...Else possibilita verificar se uma determinada variável está ou não 
de acordo com um critério de seleção. Observe o exemplo abaixo:  

<html><body> 
<%  
variavel_qualquer = hour(now) 
If variavel_qualquer < 19 then 
response.write "Bom Dia" 
Else 
response.write "Boa Noite" 
End if 
'o comando IF...then...Else comparou o valor da variavel variavel_qualquer com um 
determinado valor estipulado (no caso, 19). Se o valor for menor que 19, então 
escreva na tela "Bom Dia". Caso contrário (Else), "Boa Noite"  
%></body></html> 
  

Select Case 

O comando Select Case permite um maior controle sobre os valores de uma determinada 
variavel. Observe o Exemplo Abaixo:  

<html><body> 
<%  
variavel_qualquer = hour(now) 
Select Case variavel_qualquer 
case is > 0 and qualquer_variavel < 12 
response.write "Bom Dia" 
case os > 12 and qualquer_variavel < 19 
response.write "Boa Tarde" 
case > 19 and qualquer_variavel < 24 
Apostila ASP    24 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
response.write "Boa Noite" 
Case else 
response.write "Este relógio está maluco" 
End Select  
%></body></html> 
observe que o comando Select Case deve ser fechado com o comando End Select. 
  
Rotinas de Loop 

Loops são rotinas que devem ser repetidas até que uma determinada condição seja 
satisfeita. Existem 3 comandos que permitem tal situação: 
   
Abaixo seguem as características e exemplos de cada comando. 

Do...Loop 
O comando Do...Loop executa uma determinada rotina até que a condição se torne 
verdadeira. Observe o exemplo abaixo:  

<html><body> 
<%  
x = 0 
Do Until x=10 
x = x + 1 
Loop  
response.write x 
%></body></html> 

para interromper o Loop, usa-se o comando Exit Do 
   
For...Next 

O comando For...Next executa uma determinada rotina até que o contador (uma variável) 
atinja o valor determinado. Observe o exemplo: 

<html><body> 
<% 
For i=1 to 50 
response.write i 
next  
%></body></html> 
observe que não é necessário nenhuma rotina de incrementação de valores em i. A 
cada ciclo, o valor de i é acrescido de uma unidade, automaticamente.  
para interromper o Loop, usa-se o comando Exit For  

While...Wend 


Comentários