Tutorial Session e Application

O Método Session

Na primeira vez em que um usuário acessa uma página no nosso site, algumas conexões e desconexões ocorrem. Durante este processo, o servidor e o cliente trocam informações para se identificarem mutuamente. Devido a esta troca de informações nosso servidor será capaz de identificar um usuário específico e isto poderá ser usado para atribuir informação específica a determinado cliente. Este relacionamento entre computadores é chamado uma sessão. Durante a duração de uma sessão, é possível atribuir informação a um cliente específico usando o método Session. Nós usaremos um exemplo para explicar este método:

Suponhamos que nós queremos permitir a um determinado usuário o acesso a informações no nosso site ou diretório e que queiramos exibir o nome do usuário em todas as páginas visitadas por ele. Neste caso, nós podemos usar o método Session.

Neste exemplo, nós iremos perguntar pelo nome do usuário na nossa página index.asp.

respondtoforms.asp

<% IF Request.form=”” THEN %>


Nossas paginas privadas

Para poder acessar estas páginas, preencha o formulário abaixo:

Usuário:

Password:

<% ELSE %>

<%
IF Request.form(“username”)=”Jose” AND Request.form(“password”)=”entrar” THEN
%>
<%
Session(“permission”)=”SIM”
Session(“username”)=”Jose”
%>


Nossas paginas privadas

Ola <% =Session(“username”) %>, voce está autorizado a ver estas paginas:

Pagina 1

Pagina 2


<% ELSE %>

Erro no nome de usuário ou password

<% END IF %>

<% END IF %>

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42

 

Vamos explicar como esta página funciona:

Na linha 1 é verificado se a informação é fornecida via formulário. Se a resposta é negativa (Request.form=””), um formulário é exibido solicitando o usuário e a password.

Após o preenchimento do formulário e do seu envio, um Request.form não ;e “” e o stript salta para a linha 15. Na linha 17 são verificados o usuário e a password. Se o usuário for Jose e a password for “entrar”, então duas variáveis são inicializadas para o cliente (linhas 21-22):

Session(“permission”)=”SIM”
Session(“username”)=”Jose”

Estas variáveis ficarão armazenadas no servidor durante o tempo em que a sessão estiver ativa (normalmente ela expirará em 20 minutos se não houver contacto).

Finalmente, se o usuário e a password estiverem corretos, uma página de resposta com links é enviada ao cliente com o nome de usuário no topo. Neste exemplo, se o usuário ou password estiver incorreto, a página de resposta irá incluir o texto da linha 38.

Agora, suponhamos que o usuário clique no link “Pagina 1” (page1.asp). O código de page1.asp será o seguinte:

page1.asp

<% IF Session(“permission”)=”SIM” THEN %>


Pagina 1

Ola <% =Session(“username”) %>, bem-vindo a Pagina 1

Esta pagina esta vazia no momento, mas será muito interessante em um futuro breve.

<% ELSE %>

Voce nao esta autorizado a acessar esta pagina.

<% end IF %>

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

 

Na linha 1, é verificado se o valor para Session(“permission”) é “SIM”. Se a resposta é positiva, uma página com informação é enviada ao cliente. Se a resposta for negativa, o texto da linha 15 é enviado.

NOTAS:

  • O método Session é apropriado para sites com um número limitado de visitantes. Em sites em que o número de visitantes é muito grande, é preferível deixar a informação armazenada no computador do cliente (usando cookies).

  • Para criar mais variáveis associadas a um cliente determinado, nós devemos substituir o texto entre aspas em Session(“texto”).

  • As configurações de segurança apropriadas no navegador do cliente devem estar habilitadas.

O Método Application

Com o método Session nós definimos um valor para Session(“algumacoisa”) = “Jose”, mas esta informação não pode ser compartilhada entre visitantes (Session(“algumacoisa”) tem um único valor para cada visitante). Para poder compartilhar informações entre visitantes usamos o método Application.

Para uma melhor compreensão deste método, nos criaremos um contador que será exibido na mesma página. Para que ele funcione, copie o código abaixo para o seu servidor.

counter.asp

<%
Aplication.Lock
Application(“visitas”)=Application(“visitas”)+1
Application.Unlock
%>


Pagina em construcao

Em construcao

Visitas a pagina: <% =Application(“visitas”) %>


 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

 

Na primeira parte do código, como o método Application é compartilhado por diferentes clientes, é necessário prevenir para que outros clientes não modifiquem a informação em Application(“visitas”). Application.Lock impedirá isto interrompendo o compartilhamento, e Application.Unlock fará com que a informação volte a ser compartilhada novamente. A linha 3 incrementa o valor do contador de visitas.

Ao final, um código em html é enviado ao cliente, incluindo o valor do contador de visitas.

NOTAS:

  • A informação salva como Application(“algumacoisa”) como exibido neste tutorial é perdida sempre que o servidor sofre um reinício.

Clique aqui para ver um script simples de chat criado usando os métodos Session e Application (copie e cole o código no seu site e ele irá funcionar imediatamente).


Faça o primeiro comentário a "Tutorial Session e Application"

Comentar

O seu endereço de email não será publicado.


*