Fala galera!
Gostaria de saber se existe alguma forma de salvar e fixar o cookie durante a execução do javascript. Pois observei que o setCookie é executado corretamente mas o cookie só é carregado na próxima página. Digo isso porque dentro do código, chamo outra página através de um locate logo após o setCookie, e essa página vem com o cookie antigo.
Não sei se fui muito claro pois não sou muito bom para escrever. Mas se puderem me ajudar ficarei feliz.
A setCookie recebe o nome do cookie, o valor e o tempo em segundos para expirar.
A getCookie recebe como parametro o nome do cookie e retorna o valor. Acho que vc ta interessado no setCookie
[code] function setCookie(c_name,value,expiresecs) {
var exdate = new Date();
exdate.setTime(exdate.getTime()+ ((expiresecs) ? expiresecs*1000: 0));
document.cookie = c_name+ “=” +escape(value)+
((expiresecs==null) ? “” : “;expires=”+exdate.toGMTString());
}
function getCookie(c_name) {
if (document.cookie.length > 0) {
c_start = document.cookie.indexOf(c_name + "=");
if (c_start != -1) {
c_start = c_start + c_name.length + 1;
c_end = document.cookie.indexOf(";", c_start);
if (c_end == -1) c_end = document.cookie.length;
return unescape(document.cookie.substring(c_start,c_end));
}
}
return "";
}[/code]
Cara acho que agora estou entendendo o que realmente eu preciso.
Logo após a chamada do método setCookie, eu faço locate = “outra página que usa mesmo cookie”, então eu preciso que essa página já carregue o novo cookie que foi setado entende? Pois por enquanto eu verifico que o setCookie está setando corretamente, mas o getCookie da outra página carregada pega o valor do cookie anterior, ou seja, sem o efeito do set.
Pode ajudar?
na primeira pagina vc chama o metodo setcookie…
troca de pagina
na segunda pagina vc recupera o cookie que colocou na primeira com o metodo getcookie.
É isso?
isso!
mas só que o get pega o cookie anterior…
como faço pra atualizar o cookie?
é só chamar o setCookie denovo… usa o mesmo nome do cookie que já existe e muda o valor.
no cara…isso é mt estranho, porque quando eu seto o cookie e fico na mesma página o get pega o valor correto. Mas quando eu seto em uma página e logo após o set dou um locate para outra página, então parece que ele roda o locate antes do set e carraga o cookie anterior.
Já tentei dar um reload depois do set mas quando muda de página tá dificil viu…