Crie 4 caixas de texto de entrada (input) com os nomes de instancia: nome, email,assunto e mensagem. Apenas mensagem vai ter habilitada a opção de multiline. Também crie uma caixa de texto dinâmica com nome de instancia aviso que servirá para mostrar um texto caso algum campo estiver vazio ao tentar enviar o formulário. Incorpore (embed) os caracteres que serão usados (recomendado: Maiúsculas, Minúsculas, Numerais, Pontuação, Latin I). Crie um botão com nome de instância enviar. Clique no palco e na barra de propiedades defina a DocumentClass como Form. Agora, abra um documento de Actionscript (*.as), salve como Form.as e coloque o código abaixo:
package {
import flash.display.*;
import flash.net.*;
import flash.events.*
public class Form extends MovieClip {
var i:int;
var loader:URLLoader = new URLLoader;
var request:URLRequest = new URLRequest("form.php");
var variaveis:URLVariables = new URLVariables();
public function Form() {
mensagem.text = "";
request.method = URLRequestMethod.POST;
loader.addEventListener(Event.COMPLETE, loaderComplete);
loader.addEventListener(IOErrorEvent.IO_ERROR, loaderError);
enviar.addEventListener(MouseEvent.CLICK, enviarClick)
function enviarClick(e:MouseEvent) {
if ( (nome.length) && (email.length) && (assunto.length) && (mensagem.length)) {
variaveis.nome = nome.text;
variaveis.email = email.text;
variaveis.assunto = assunto.text;
variaveis.mensagem = mensagem.text;
request.data = variaveis;
loader.load(request)
enviar.removeEventListener(MouseEvent.CLICK, enviarClick)
} else {
aviso.text = "- por favor, preencha todos os campos -";
}
}
function loaderComplete(e:Event){
trace("Mensagem enviada com sucesso.")
}
function loaderError(e:IOErrorEvent){
trace("Ocorreu um erro.")
}
}
}
}Feito isso, abra o Bloco de Notas ou qualquer outro editor de texto, salve o documento como form.php e coloque o código abaixo:
<?php $nome = $_POST["nome"]; $email = $_POST["email"]; $assunto = $_POST["assunto"]; $mensagem = $_POST["mensagem"]; $recipient = "email@dominio.com"; $ip = $_SERVER['REMOTE_ADDR']; utf8_decode($nome); utf8_decode($email); utf8_decode($mensagem); utf8_decode($assunto); $cabecalho = "MIME-Version: 1.0 "; $cabecalho .= "Content-type: text/html; charset=utf-8 "; $cabecalho .= "Reply-to: ".$_POST['email']." "; $cabecalho .= "From: ".$_POST['nome']." <".$_POST['email'].">"; $subject = "Contato: ".$assunto; $msg = "Nome: $nome
Email: $email
Mensagem: $mensagem
IP: $ip "; mail($recipient, $subject, $msg, $cabecalho); ?>
Antes de salvar e fechar, mude a linha $recipient = ?email@dominio.com?; colocando entre as aspas o email ao qual deseja que a informação seja enviada.
Nota: a linha mensagem.text = ??; do ActionScript foi adicionada porque por alguma estranha razão (bug?) ao deixar a caixa de texto como multiline, inicialmente o Flash não considera o conteúdo do texto como nulo.
Exemplo de FormulárioDownload de FormExample.zip
Autor: Igor Amendola
Fonte: http://www.flashpedia.com.br/2009/08/formulario-as3-php/
Tags: Flash, ActionScript 3, AS3, Formulário, PHP





