Os cookies são pequenos arquivos do tipo texto armazenados no computador do usuário. Estes pequenos arquivos armazenam informações diversas definidas pelo programador do site. O usuário poderá bloquear o aceite dos cookies através do próprio navegador ou por outros programas com o mesmo objetivo. O uso de cookies é bastante comum em sistemas para medir audiência de visitação, registrar as preferências do usuário ou até mesmo rastrear seus cliques no site.
******************************************************
Atributo Descrição
Domain: Se especificado, o cookie será enviado somente para os solicitações deste domínio.
Expires: A data em que o cookie expira. Essa data deve ser definida para que o cookie seja armazenado no computador do usuário após a conclusão da sessão. Se este atributo não for definido com uma data posterior a atual, o cookie expirará quando a sessão for finalizada.
HasKeys: Especifica se o cookie contém chave retornando True/ False.
Path: Se especificado, o cookie será enviado sempre que houver uma requisição neste caminho. Se este atributo não for definido, o caminho do script asp que o criou será utilizado.
Secure: Indica que o cookie deve ser enviado somente se o Secure Sockets Layer estiver ativo.
******************************************************
Criar um cookie
Se o cookie especificado não existir, ele será criado. Se existir, ele apanhará o novo valor e o valor antigo será descartado. O script abaixo cria um cookie chamado MyCookie:
<%
Response.Cookies("MyCookie") = "Novo Cookie"
%>
Usa-se o objeto "Request" para recuperar o valor do cookie :
<%
Dim MyVar
MyVar = Request.Cookies("MyCookie")
Response.Write "<p><b>"&MyVar&"</b></p>"
%>
Armazenar o valor de uma variável
Para gravar um cookies com o conteúdo de uma variável, é necessário que você utilize a função CStr() para converte-la no tipo string.
<%
MyVar = Request.Form("strName")
Response.Cookies("MyCookie") = CStr(MyVar)
%>
Várias informações em um único Cookie
A coleção Cookie poderá armazenar múltiplos valores em um único Cookie
<%
Response.Cookies("MyCookie")("MyCity") = "Belo Horizonte"
Response.Cookies("MyCookie")("MySite") = "Suportebrasil.NET"
%>
Para recuperar o valor de uma das chaves :
******************************************************
<%
Dim MyCity
MyCity = Request.Cookies("MyCookie")("MyCity")
Dim MySite
MySite = Request.Cookies("MyCookie")("MySite")
Response.Write "<p><b>Cidade : "&MyCity&"</b></p>"
Response.Write "<p><b>Site : "&MySite&"</b></p>"
%>
******************************************************
A regra para atribuir o valor de uma variável a uma das chaves de um cookie é a mesma empregada para criar um cookie sem chave. Usa-se a função "CStr()".
Muita atenção a essa regra:
Uma atribuição subseqüente a "MyCookie" criado no script acima, sem a especificação de uma chave, causaria a destruição das chaves "MyCity" e "MySite". Veja o script abaixo :
<%
Response.Cookies("MyCookie") = "Belo Horizonte"
%>
No script acima, as chaves "MyCity" e "MySite" são destruídas e seus valores descartados. O cookie "MyCookie", agora contém o valor "Belo Horizonte".
Como complemento, se você atribuir uma chave a um cookie que não tem chave, o valor não chave desse cookie será destruído. Por exemplo : Se depois do código anterior for feito:
<%
Response.Cookies("MyCookie")("MyJob") = "Programador"
%>
O valor "Belo Horizonte" é destruído e a sub chave MyJob estará armazenando o valor Programador.
Cookie com Chaves
Para determinar se um cookie tem chaves, utilize a seguinte sintaxe :
<%
Response.Write Request.Cookies("MyCookie").HasKeys
%>
Se "MyCookie" for um dicionário de cookie, o valor impresso será "TRUE" caso contrário "FALSE".
Interagir entre as chaves de um cookie
Podemos interagir entre as chaves de um Cookie através da instrução For Each.
******************************************************
<%
For Each Subkey in Request.Cookies("MyCookie")
Response.Write SubKey &" - "& Request.Cookies("MyCookie")(Subkey)
Next
%>
******************************************************
Se você interagir em um cookie que não tem chave, o mesmo não será executado. É uma boa prática checar se o cookie tem chaves. O script acima ficaria mais correto se fosse escrito dessa forma :
******************************************************
<%
If Request.Cookies("MyCookie").HasKeys then
For Each Subkey in Request.Cookies("MyCookie")
Response.Write SubKey &" - "& Request.Cookies("MyCookie")(Subkey)
Next
End If
%>
******************************************************
Atributos de um cookie
******************************************************
<%
Response.Cookies("UserLogin") = "joses"
Response.Cookies("UserLogin").Expires = #31/12/2000#
Response.Cookies("UserLogin").Domain = "/suportebrasil.net/"
Response.Cookies("UserLogin").Path = "/artigos"
Response.Cookies("UserLogin").Secure = FALSE
%>
******************************************************
Boa Programação!
tenho preferência por ASP uma linguagem de facil aprendizado.". Hoje, vai saber...
0 comentários:
Postar um comentário