O Teu Mundo - Muito mais do que possas imaginar...
Sistema de Login utilizando Flash e XML Americ10

Bem-vindo ao O Teu Mundo!
Registre-se, conecte-se para ter acesso ao forum por completo, ainda podera ter um perfil que pode ser modificado com css e muito mais...



Sistema de Login utilizando Flash e XML

Ir em baixo

Sistema de Login utilizando Flash e XML Empty Sistema de Login utilizando Flash e XML

Mensagem por Miguel Rocha em Qui Mar 25, 2010 1:59 am

O que vamos aprender hoje é como criarmos um sistema de login e senha utilizando o Flash e um arquivo XML com segurança, através de dados que serão ocultados por classes que ficam ocultas em nossa programação, impossibilitando a visualização por pessoas mau intensionadas.

Vamos começar ?

1) Primeiro passo:

Antes de tudo vamos construir em um arquivo .as a classe que será importada e ocultada dentro de nosso arquivo swf.
Abra o Flash e selecione File -> New -> ActionScript File.
Vocês vão notar que não existe interface, é apenas um campo para a inserção de um código em ActionScript.
Pois bem, nele coloquem o código abaixo:
//_______________________________________________________________________________
// Criamos a classe e extendemos ela para a utilização em MovieClips
class classeLogin extends MovieClip {
// Criamos a função base que será chamada em nossos MovieClips
private function classeLogin () {
// Condicionamos o evento "onRelease" do MovieClip para a função "Release" criada logo abaixo.
this.onRelease = this.Release;
}

// Criamos uma função privada chamada "Release ()"
private function Release () {
// Criamos uma variável chamada arquivo que vai armazenar o nome do nosso arquivo XML
var arquivo:String = new String ();
// Estabelecemos o valor da variável "arquivo" com o nome de "log.xml" que será o nome do meu XML
_root.arquivo = "log.xml"
// Executamos a função "busca ()" que progamaremos em nosso arquivo principal
_root.busca ();
}
}

/*
PORQUE CRIAR A CLASSE:
O propósito da criação desta classe é apenas de esconder o nome do nosso arquivo XML que
contém o login e a senha de cada usuário, assim como a página que será exibida para cada
usuário no momento em que ele for logado corretamente.

COMO FUNCIONA:
No momento em que clicarmos no botão será gerada uma variavel no palco com o nome de "log.xml", e essa
variável vai ser recuperada pelo flash e utilizada para abrir o XML secreto.
*/
//_______________________________________________________________________________
Agora salve este arquivo como “classeLogin.as“.

2) Segundo passo:

Vamos agora para a construção de nosso arquivo XML.
Abra o Flash e selecione File -> New -> ActionScript File.
Vocês vão notar que não existe interface, é apenas um campo para a inserção de um código em ActionScript.
Pois bem, nele coloquem o código abaixo:
//_______________________________________________________________________________



//_______________________________________________________________________________
Agora, salve este arquivo como “log.xml” que automaticamente o Flash salvará ele como um arquivo .xml e não .as
Para adicionar mais usuários basta repetir uma das linhas de exemplo com o nome, senha e link.

3) Terceiro passo:

Vamos agora para a construção de nosso arquivo FLA.
Abra o Flash e selecione File -> New -> Flash File (Action Script 2.0).
Crie 2 camadas: Actions e Elementos.
Na camada Elementos:
Montem um layout como o que está abaixo, e instanciem os campos da maneira descrita na imagem.

Sistema de Login utilizando Flash e XML Layout10

Na camada Actions:
Coloque o código abaixo:
//_______________________________________________________________________________
// Criamos a função "busca ()" que será chamada ao clicarmos no botão
function busca () {
/*
Criamos uma variável que vai comparar e um por um os nomes
dos nós de nosso XML com o valor colocado no inputText
*/
var erro:Number = 0;
// Ativamos a correção de acentos no nosso arquivo
System.useCodepage = true;
// Criamos uma variavel XML
var meuXML:XML = new XML();
// Carregamos o arquivo oculto vindo da nossa classe
meuXML.load(_root.arquivo);
// Ignoramos o espaçamento em branco do XML
meuXML.ignoreWhite = true;
// Estabelecemos o que acontecerá quando o XML for carregado
meuXML.onLoad = function(){
// Criamos uma variavel para recolher a quantidade de nos do nosso XML
qnt = this.childNodes.length
// Criamos uma função que vai se repetir ate não existirem mais nós no XML
// Ou seja, até que não existam mais nomes a serem comparados.
for (i=0; i
// Recolhemos o nome, senha e link de cada usuário de nosso XML
usuario = this.childNodes[i].nodeName;
senha = this.childNodes[i].attributes.senha;
link = this.childNodes[i].attributes.link;
// Verifica se o nome digitado é de algum usuário cadastrado
if (usuario != user.text) {
erro ++
/*
Se a quantidade de erros atingir a quantidade de usuários do XML
significa que não existe aquele usuário digitado
*/
if (erro == qnt) {
// Exibimos a informação de "Dados Inválidos"
aviso.text = "Dados Inválidos";
}}
// Caso o usuário digitado bata com o usuário registrado...
if (usuario == user.text) {
// Testamos para ver se o pass digitado bate com aquele usuário.
if (senha == pass.text) {
// Caso sim, exibimos a URL do usuário cadastrado:
// Aqui você edita para a ação que desejar, como por exemplo um getURL.
aviso.text = "Usuário Logado: ("+link+")";
// Caso esteja errada....
} else if (senha != pass.text) {
// Exibimos a informação de "Dados Inválidos"
aviso.text = "Dados Inválidos";
}}}}}
//_______________________________________________________________________________

4) Quarto passo:

Agora, nesse quarto e último passo vamos linkar nosso botão com a nossa classe criada separadamente.
1° Certifique-se de que a Classe e o arquivo FLA estejam salvos no mesmo diretório.
2º Com o botão direito do mouse, clique no simbolo de
seu botão na library e selecione a opção “Linkage” como mostra a figura
abaixo:

Sistema de Login utilizando Flash e XML Linkag10

3º No campo de texto “Class” coloque o nome de nossa classe conforme criamos anteriormente, como mostra a figura abaixo:

Sistema de Login utilizando Flash e XML Linkag11

Considerações finais:


Ao “linkar” a classe com o nosso botão ela ja fica inserida em nosso arquivo FLA de maneira oculta.
Sendo assim, não precisa e nem deve fazer o upload do arquivo “classeLogin.as” para o servidor.
Os únicos que devem ser enviados são o swf e o XML.

Uma dica importante é a de colocar um nome complicado em seu arquivo XML que contenha os dados dos usuários cadastrados, pois dessa maneira você dificulta ainda mais com que pessoas encontrem seu arquivo no servidor.
Opte por nomes como “as77ASs8s.xml”
Sim, pois desta maneira, com nomes malucos, a probabilidade de seu XML ser encontrado é praticamente nula.

_______________________________________________
Olá Convidado, actualmente este fórum tem 33 membros, 114 categorias , 433 tópicos e 793 posts, mas apenas 0 são teus !
Vá Convidado , tens de postar mais !

Miguel Rocha
Administrador
 Administrador

Masculino Mensagens : 692
Pontos : 22478
Reputação : 11
Idade : 27
Localização : Porto


Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum