faz um tempinho que estou preparando esse formulario (lendo muito material) e sempre da ums erros aqui, mesmo colocando no servidor wamp que tem suporte php
os erros são:
o botão limpar não limpa os checkbox quando estão marcados, porém quando não estã marcado nenhum checkbox a mensagem "Prencha todos os campos!" está funcionando normal
(a var escolha refere-se aos 5 checkbox)
a function _verifica não está funcionando;
a function _timer não está funcionando;
quando completo o formulario não acontece nada além da escrita "Enviando o formulario ....." da function _enviar
TypeError: Error #1034: Falha de coerção de tipo: não é possível converter "Nome=k&Cidade=k&Estado=k&Tel=k&Email=k&Checkin=k&Checkout=k&Adultos=k&Criancas=k&Comentarios=kApto 1, " em flash.net.URLVariables. at ContatoTeste_fla::Contato_mc_1/_enviar()
Aqui o arquivo AS3
stop();
import fl.data.DataProvider;
//variaveis
nome_txt.text = "";
cidade_txt.text = "";
estado_txt.text = "";
tel_txt.text = "";
email_txt.text = "";
checkin_txt.text = "";
checkout_txt.text = "";
adultos_txt.text = "";
criancas_txt.text = "";
comentarios_txt.text = "";
msg_txt.text = "";
var escolha:String = new String();
var timer:Timer;
var url_loader:URLLoader = new URLLoader ;
var url_request:URLRequest = new URLRequest("4send_email.php");
//arquivo send_mail.php tem que estar na mesma pasta
// caso seja em outro lugar colocar o endereço do link onde está
url_request.method = URLRequestMethod.POST;
//registro eventos
limpar_btn.addEventListener(MouseEvent.CLICK, _limpar);
enviar_btn.addEventListener(MouseEvent.CLICK, _enviar);
//funçoes do sistema;
/* Função disparada quando se clica no botão limpar */
function _limpar(event:MouseEvent):void
{
limpa();/* Chamamos a função limpa */
}
function limpa()
{
nome_txt.text = "";
cidade_txt.text = "";
estado_txt.text = "";
tel_txt.text = "";
email_txt.text = "";
checkin_txt.text = "";
checkout_txt.text = "";
adultos_txt.text = "";
criancas_txt.text = "";
comentarios_txt.text = "";
escolha = "";
}
//outras funçoes
function _enviar(e:MouseEvent):void
{
/* Verifica se o CheckBox apto 1 foi selecionada */
if (apto1_ch.selected == true)
{
/* A opção foi selecionada */
/* Armazena na variável escolha o valor Apto 1 */
escolha = "Apto 1, ";
}
/* Verifica se o CheckBox Apto 2 foi selecionada */
if (apto2_ch.selected == true)
{
/* A opção foi selecionada */
/* Armazena na variável escolha o valor Apto 2 */
escolha += "Apto 2, ";
}
/* Verifica se o CheckBox apto 3 foi selecionada */
if (apto3_ch.selected == true)
{
/* A opção foi selecionada */
/* Armazena na variável escolha o valor Apto 3 */
escolha += "Apto 3, ";
}
/* Verifica se o CheckBox apto 4 foi selecionada */
if (apto4_ch.selected == true)
{
/* A opção foi selecionada */
/* Armazena na variável escolha o valor Apto 4 */
escolha += "Apto 4, ";
}
/* Verifica se o CheckBox apto 5 foi selecionada */
if (apto5_ch.selected == true)
{
/* A opção foi selecionada */
/* Armazena na variável escolha o valor Apto 5 */
escolha += "Apto 5.";
}
if (nome_txt.text == "" || cidade_txt.text == "" ||
estado_txt.text == "" || tel_txt.text == "" ||
email_txt.text == "" || checkin_txt.text == "" ||
checkout_txt.text == "" || adultos_txt.text == "" ||
criancas_txt.text == "" || comentarios_txt.text =="" || escolha =="")
{
msg_txt.text = "Prencha todos os campos!";
}
else
{
msg_txt.text = "Enviando o formulario .....";
var mail_data:String = "Nome=" + nome_txt.text +
"&Cidade=" + cidade_txt.text +
"&Estado=" + estado_txt.text +
"&Tel=" + tel_txt.text +
"&Email=" + email_txt.text +
"&Checkin=" + checkin_txt.text +
"&Checkout=" + checkout_txt.text +
"&Adultos=" + adultos_txt.text +
"&Criancas=" + criancas_txt.text +
"&Comentarios=" + comentarios_txt.text + escolha;
var url_vars:URLVariables = URLVariables(mail_data);
url_vars.escolha = escolha;
url_vars.dataFormat = URLLoaderDataFormat.TEXT;
url_request.data = url_vars;
url_loader.load(url_request);
url_loader.addEventListener(Event.COMPLETE, _verifica);
}
}
function _verifica(e:Event):void
{
var loader:URLLoader = URLLoader(e.target);
var email_status = new URLVariables(loader.data).success;
if (email_status=="yes")
{
msg_txt.text = "Enviado com Sucesso!";
timer = new Timer(500);
timer.addEventListener(TimerEvent.TIMER, _timer);
timer.start();
}
else
{
//para verificar se o timer funciona
/*timer=new Timer(500);
timer.addEventListener(TimerEvent.TIMER, _timer);
timer.start();*/
msg_txt.text = "Erro no envio, tente de novo!";
}
}
function _timer(e:TimerEvent):void
{
if (timer.currentCount >= 10)
{
nome_txt.text = cidade_txt.text = estado_txt.text =
tel_txt.text = email_txt.text = checkin_txt.text =
checkout_txt.text = adultos_txt.text = criancas_txt.text =
comentarios_txt.text = escolha ="";
timer.removeEventListener(TimerEvent.TIMER, _timer);
}
}
PHP
<?php
$nome_contato = $_POST['Nome'];
$cidade_contato = $_POST['Cidade'];
$estado_contato = $_POST['Estado']:
$tel_contato = $_POST['Tel'];
$email_contato = $_POST['Email'];
$checkin_contato = $_POST['Checkin'];
$checkout_contato = $_POST['Checkout'];
$adultos_contato = $_POST['Adultos'];
$criancas_contato = $_POST['Criancas'];
$comentarios_contato = $_POST['Comentarios'];
$escolha_contato = $_POST['escolha'];
if( $nome_contato == true )
{
$sender = $email_contato;
$receiver = "contato@meuemail.com.br";
$client_ip = $_SERVER['REMOTE_ADDR'];
$corpo_email = "Nome: $nome_contato
\nCidade: $cidade_contato
\n\nEstado: $estado_contato
\n\nTel: $tel_contato
\n\nEmail: $sender
\n\nCheckin: $checkin_contato
\n\nCheckout: $checkout_contato
\n\nAdultos: $adultos_contato
\n\nCriancas: $criancas_contato
\n\nComentario: \n\n$comentarios_contato
\n\nescolha: $escolha_contato
\n\nIP: $client_ip";
/* $escolha = utf8_decode(@$_POST['escolha']); // metodo utf8_decode não funciona */
$extra = "De: $sender\r\n" . "Responder para: $sender \r\n" . "X-Mailer: PHP/" . phpversion();
// Vamos fazer um teste para ver se o email foi enviado corretamente
if( mail( $receiver, "Formulário do Site - $comentarios_contato", $corpo_email, $extra ) )
{
// Caso o email tenha sido enviado pelo provedor, retorna YES
echo "success=yes";
}
else
{
// Caso não tenha sido enviado, retorna NO
echo "success=no";
}
}
?>

Help














