Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mmelissa

Expirar cookie com javascript não funciona

Recommended Posts

Caros, por favor me ajudem !

 

Crio cookies utilizando o lado servidor... e o conteudo destes cookies é criptografado.

Precisei pegar o conteudo de um determinado cookie via javascript...utilizando funcoes de decode utf8 consegui pegar o valor.

Só que não consigo expirar meu cookie de jeito nenhum. O nome do cookie é "comentario".

 

No momento que desejo expirar o cookie, executo a funcao:

 

 

function setCookie(nome, valor, dias) {

diasms = (new Date()).getTime() + 1000 * 3600 * 24 * dias;

dias = new Date(diasms);

expires = dias.toGMTString();

document.cookie = nome + "=" + valor + "; expires=" + expires;

 

}

 

Passo como parametro:

nome = "comentario"

valor = "nada"

dias = -1000

 

Só que logo após executar a função, eu dou um alert

alert(document.cookie);

 

E o conteudo não se altera com o que eu passei via setCookie de nenhuma forma.......o alert

exibe todos os cookies da aplicação com seus respectivos valores criptografados, ou seja, ao meu ver, atribuir um valor

diretamente a document.cookie não está funcionando. Diversas pessoas aplicam este exemplo, mas o que posso estar fazendo

de errado, para mim não funciona !

 

Obrigada!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você teria uma página de exemplo?

Pela explicação, a principio, você estaria fazendo certo, mas acho que seria melhor eu debugar aqui para poder te ajduar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

As funções abaixo funcionam corretamente. Fiz algumas modificações para facilitar a obtenção do valor via quebra pelo "split", sem aquela parafernalha toda do "substring".

 

//Adicionar cookies:
function setCookie(strCookie, strValor, lngDias) {
	
	var dtmData = new Date();

	if(lngDias) {
		dtmData.setTime(dtmData.getTime() + (lngDias * 24 * 60 * 60 * 1000));
		var strExpires = "; expires=" + dtmData.toGMTString();
	} else {
		var strExpires = "";
	}
	document.cookie = strCookie + "=" + escape(strValor) + strExpires + "; path=/";
}

//Obter cookies:
function getCookie(strCookie) {   
if (document.cookie.length > 0) {
	var strNomeIgual = strCookie+"=";
	//Pegando todas as cookies do documento:
	var arrCookies = document.cookie.split(';');
	var arrValor;
	for(var i=0; i<arrCookies.length; i++) {
		//Armazenando a cookie atual [i] em uma variável:
		var strValorCookie = arrCookies[i];
		//alert(strValorCookie);
		
		if(strValorCookie.indexOf(strNomeIgual) != -1) {
		 arrValor = arrCookies[i].split('=');
			//return strValorCookie.substring(strNomeIgual.length, strValorCookie.length);
			alert(unescape(arrValor[1]));
		}
	}
}
	return "";
}


// Função para excluir o cookie desejado.
function excluirCookie(strCookie) {
	setCookie(strCookie, '', -1);
}
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Afinal o que eu devo usar para criar um Cookie ?

document.cookie("NomeCookie") = "Teste";

 

ou

 

Response.Cookies("NomeCookie") = "Teste";

 

:blink:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.