Ir para conteúdo

Arquivado

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

guiobom131

[Resolvido] Cookies no flash

Recommended Posts

SharedObject é parecido com os cookies do html. Com ele você pode gravar informações no computador do usuário. Informações como número de visitas, horário da última visita, preferências, opções, textos, links visitados, etc.

O comando básico do SharedObject é:

meuCookie = SharedObject.getLocal("nomeDoArquivo");

meuCookie.data.nomeDaVariavel = valorDoVariavel;

meuCookie.flush();

Onde: getLocal especifica o nome do arquivo salvo na máquina, data indica um valor dentro do SharedObject e flush() grava as alterações no computador.

Um exemplo prático:

Abra o flash e crie dois campos de entrada com nomes "nome" e "valor", um campo dinâmico com nome "resultado", dois botões com nomes "ok" e "limpar" , arraste um componente comboBox com nome "combo" e crie um movieClip de nome "instrucoes" onde poderá escrever as instruções e saudações como olá, tudo bem?, etc.

No único quadro digite o código:

//Cria ou localiza o arquivo

lista = SharedObject.getLocal("lista");

//Se logado for true quer dizer que você já visitou esta página, então as instruções não serão visíveis

if (lista.data.logado) {

instrucoes._visible = 0;

} else {

//Se esta é a primeira vez, cria-se a Array e logado é true agora

instrucoes._visible = 1;

lista.data.logado = 1;

lista.data.dados = new Array();

lista.flush();

combo._visible = 0;

}

//Os dados do combo virá do cookie

combo.setDataProvider(lista.data.dados);

onEnterFrame = function () {

// Determina o total de dados salvos

total = lista.data.dados.length;

// O texto irá mostrar a data relacionada ao label do combo

resultado.text = combo.getSelectedItem().data;

};

ok.onPress = function() {

//Esconde as instruções

instrucoes._visible = 0;

//Inclui os dados dos campos de textos na Array do cookie

var item = new Object();

item.label = nome.text;

item.data = valor.text;

lista.data.dados[total] = item;

//Salva o cookie com os novos dados

_root.lista.flush();

//Limpa as caixas de entrada

nome.text = "";

valor.text = "";

//Atualiza o combo

combo.setDataProvider(lista.data.dados);

combo._visible = 1;

combo.setSelectedIndex(total);

};

limpar.onPress = function() {

//Logado como false para as instruções aparecerem novamente

lista.data.logado = 0;

instrucoes._visible = 1;

//splice(0) apaga todos os dados do cookie e flush() salva as modificações

lista.data.dados.splice(0);

lista.flush();

//Esconde o combo, pois não há nenhum item a ser selecionado

combo._visible = 0;

};

Publique e pronto!

 

VOCÊ PODE ENCONTRAR O RESULTADO FINAL AQUI

 

Veja que cada vez que atualiza a página, os dados salvos estão lá!

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.