[Resolvido] Formulario em Flash + PHP
Olá pessoal,
Segui um tutorial sobre formularios, e quase consegui terminar.
Li e reli as dicas, mas nao estou conseguindo fazer com que ele envie a mensagem.
Trabalho com AS2 e Flash CS3.
Meu servidor de testes tem suporte a php. No flash, nao da nenhum erro de sintaxe... Enfim, nao sei o que pode estar errado.
Será que alguem consegue me ajudar, desvendando esse misterio?
Esse é o meu php:
<?php
/* Valores enviados pelo Flash */
/* Fiquem livres a enviar quantos valores quiserem */
$nome = utf8_decode(@$_POST['nome']);
$email = utf8_decode(@$_POST['email']);
$telefone = utf8_decode(@$_POST['telefone']);
$endereco = utf8_decode(@$_POST['endereco']);
$nascimento = utf8_decode(@$_POST['nascimento']);
$conheceu = utf8_decode(@$_POST['conheceu']);
/* Coloquem seu E-mail aqui */
$para = "fel.machado@globo.com";
/* Aqui uma pequena verificação para evitar que enviem E-mails sem valores */
if ($nome != "" && $email != "" && $telefone != "" && $endereco != "" && $nascimento != "") {
/* Montamos o E-mail */
/* Criei um exemplo bem simples de E-mail usando HTML */
/* Fiquem livres para modificar conforme desejam */
$corpo = '<html><head><title>'.Clube Rio Pelle.'</title></head><body>';
$corpo .= 'Nome: '.$nome.'<br />;E-mai: '.$email.'<br />Telefone: '.$telefone.'<br />';
$corpo .= 'Endereço: '.$endereco.'<br />';
$corpo .= 'Data de Nascimento: '.$nascimento.'<br />Como conheceu a Rio Pelle: '.$conheceu;
/* Aqui modificamos o tipo de E-mail para o formato HTML */
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
/* Aqui mudamos o cabeçalho para exibir o E-mail de quem enviou */
$headers .= 'From:'. $email . "\r\n";
/* Por fim enviamos o E-mail com os dados recebidos do Flash */
mail($para, $assunto, $corpo, $headers);
/* Retornamos um Ok para o Flash */
print 'erro=0';
/* Caso os campos não sejam preenchidos */
} else {
/* Retorna o erro ao Flash */
print 'erro=1';
}
?>
Esse o meu AS:
/ Criamos uma instancia para a Classe LoadVars /
var envia:LoadVars = new LoadVars();
/ Ao clicar do botão enviar /
enviar_btn.onPress = function() {
/* Verifica se preencheu o campo nome */
if (nome_txt.text == "") {
/* Mostra a mensagem de erro */
status_txt.text = "Preencha o campo Nome corretamente";
/* Verifica se preencheu o campo email */
} else if (email_txt.text == "") {
/* Mostra a mensagem de erro */
status_txt.text = "Preencha o campo E-mail corretamente";
} else if ((email_txt.text.indexOf("@") == -1 || email_txt.text.indexOf(".") == -1)) {
/* Mostra a mensagem de erro */
status_txt.text = "Preencha o campo E-mail corretamente";
} else if (telefone_txt.text == "") {
status_txt.text = "Preencha o campo Nome corretamente";
} else if (endereco_txt.text == "") {
status_txt.text = "Preencha o campo Nome corretamente";
} else if (nascimento_txt.text == "") {
status_txt.text = "Preencha o campo Nome corretamente";
} else if (conheceu_txt.text == "") {
status_txt.text = "Preencha o campo Nome corretamente";
/* Se tudo estiver ok */
} else {
/* Envia para o PHP a variavel nome com os dados do campo nome */
envia.nome = nome_txt.text;
/* Envia para o PHP a variavel email com os dados do campo email */
envia.email = email_txt.text;
envia.telefone = telefone_txt.text;
envia.endereco = endereco_txt.text;
envia.nascimento = nascimento_txt.text;
envia.conheceu = conheceu_txt.text;
/* Avisa que está mandando o E-mail */
status_txt.text = "Enviando mensagem";
/* Enviamos as variáveis ao PHP e carregamos a mensagem que vai vir do PHP */
envia.sendAndLoad("[http://www.felipedesigner.com/contato.php"](http://www.felipedesigner.com/contato.php), envia, "POST");
}
};
/ Assim que o PHP for carregado /
envia.onLoad = function(ok) {
/* Se carregou tudo certinho */
if (ok) {
/* Se deu tudo ok no PHP */
if (this.erro == 0) {
/* Chamamos a função limpa */
limpa();
/* Mostra mensagem de sucesso */
status_txt.text = "Mensagem enviada com sucesso";
} else {
/* Mostra mensagem de erro */
status_txt.text = "Erro ao enviar E-mail";
}
}
};
/ Ao clicar do botão limpar /
limpar_btn.onPress = function() {
/* Chamamos a função limpa */
limpa();
};
/ Função responsável por limpar os campos do formulário /
function limpa() {
/* Zeramos a variável programas */
programas = "";
/* Apagamos os campos de texto */
nome_txt.text = "";
email_txt.text = "";
telefone_txt.text = "";
endereco_txt.text = "";
nascimento_txt.text = "";
conheceu_txt.text = "";
status_txt.text = "";
}
Essas são minhas instancias: Todas com input text
nome_txt
email_txt
telefone_txt
endereco_txt
nascimento_txt
conheceu_txt
status_txt
Os botoes:
enviar_btn
limpar_btn
Tudo foi feito em 2 layers:
Ações (sao as ações)
Objetos (sao os input text's)
obrigado pela atenção.
att,
felipe machado
Discussão (1)
Carregando comentários...