Ir para conteúdo

Arquivado

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

Felippe.88

(LoadVars a Saga Continua)

Recommended Posts

Olá a todos ... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Em primeiro lugar gostaria de agradecer a todos os usuários registrados neste fórum, pois estes ja me ajudaram muito, de verdade ..

Bem eu já imaginava que um dia teria que me registrar pois apareceria uma dúvida que não iria conseguir solucionar sozinho .. e nem colando do pessoal .. rs

 

Mas vamos lá ..

Situação: Estou desenvolvendo um Formulário de contato em Flash e enviando as variáveis usando o LoadVars.

Tenho um "envia.php", como ja era de se esperar, e criei um "recebe.php" só com uns "echos" para que eu possa ver se realmente as variáveis estão chegando no PhP .. (Pois é os arquivos ainda não estão Hospedados.. http://forum.imasters.com.br/public/style_emoticons/default/cry.gif )

 

Dúvida1: Bem ... por incrível que pareça, as variáveis não estão sendo reconhecidas de forma que aparece o "bendito" do:"Undefined index: nomedavariável". Tá .. eu sei .. é alguma besteira que eu estou fazendo com os nomes das variáveis.. Mas relamente não consigo enxergar onde estão os erros ..

 

Dúvida2: Usei as User Interfaces, ou seja, aqueles Alert e textinputs prontos do flash .. Todos devidamente instânciados e tal ... Mas sobre o "setStyle("themeColor","haloOrange")" .. Sou obrigado a usar somente estes temas ?! Ou posso criar um lá no arquivinho .AS ?!

 

--

Segue o script .. (Dúvida1)

 

CODE
function sendMsg(url:String):Void {

if (arguments.length===0){

return;

}

var enviaParaServidor:LoadVars=new LoadVars();

enviaParaServidor.nome=textNome.text;

enviaParaServidor.email=textEmail.text;

enviaParaServidor.telefone=textTel.text;

enviaParaServidor.cidade=comboCidade.selectedItem.label;

enviaParaServidor.mensagem=textMsg.text;

enviaParaServidor.sendAndLoad(envia.php,enviaParaServidor,"POST");

enviaParaServidor.sendAndLoad(recebe.php,enviaParaServidor,"POST");

getURL("recebe.php", "_self", "POST");

Bom o trecho da função que envia já foi , agora vêm os 2 arquivos .php...

envia.php

 

CODE
<?php

$nome = $_POST["nome"];

$telefone = $_POST["telefone"];

$email = $_POST["email"];

$cidade = $_POST["cidade"];

$mensagem = $_POST["mensagem"];

 

if ($email != "" and $destinatario != "")

{

$cabecalho = "From: $email\nReply-To: $email";

$corpo .= "nome =". $nome ."\n";

$corpo .= "email =". $email ."\n";

$corpo .= "telefone =". $telefone ."\n";

$corpo .= "cidade =". $cidade ."\n";

$corpo .= "mensagem =". $mensagem ."\n\n";

$corpo .="\n\n*************************************

*****\n";

$corpo .= "by Profº Felippe .\n";

$corpo .= "**********************************************";

mail($destinatario, $assunto, $corpo, $cabecalho);

}

 

?>

e.. recebe.php

 

CODE
<?php

$nome = $_POST['nome'];

$telefone = $_POST['telefone'];

$email = $_POST['email'];

$cidade = $_POST['cidade'];

$mensagem = $_POST['mensagem'];

 

echo "O usuário:".$nome;

echo "<br>";

echo "Telefone:".$telefone;

echo "E-mail:".$email;

echo "<br>";

echo "Da seguinte localidade:".$cidade;

echo "<br>";

echo "Enviou a Mensagem:".$mensagem;

 

?>

Bem e só aproveitando o trecho da Dúvida2.

 

CODE
with(_global.style){

setStyle("fontFamily","Arial");

setStyle("fontSize","11");

setStyle("fontColor",0x333333);

setStyle("themeColor","haloOrange");

setStyle("openDuration",2000);

setStyle("openEasing",Elastic.easeOut);

}

Tentei alterrar esse teminha uma vez e não consegui ...

 

bem para concluir .. Meu post deve estar super enrrolado ... Mas acreditem esse também é meu estado, no momento.

Antecipadamente:

Obrigado..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Felipe!

 

Seguinte eu fiz um tutorial : Tutoria flash + php + combo box

 

Ali podera tirar todas as suas duvidas.

 

Abraços!

Olá Evandro.. Obrigado pela atenção..

 

Mas ja tinha dado uma olhada em seu tutorial, inclusive até tinha baixado os arquivos para checar possíveis diferenças no meu nos meus scripts e nos seus .. Porém não encontrei nada .. rs Eu redigi da mesmaforma que ti .

 

Só a uma pequena diferença, quanto a parte dos aqruivos em PhP, onde eu declarei que os nomes das variáveis do PhP ($*) seriam iguais aos nomes das variáveis do Flash ... Isso funcionou em um outro Formulário que eu tinha feito a um tempinho atrás.. (Mas usei o LoadVariableNum nesse formulário mais antigo)... Então tentei manter essa parte do script...

 

Mas não acho o porque do PhP não encontrar valores para as variáveis.. sendo que estão referênciadas corretamente..(pelo menos eu acho) :unsure:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alguém pode me dizer se estou errando quanto a lógica, sintaxe ou sei lá porque meu Script parece estar correto mas não consigo receber os valores das variáveis ?! :unsure:

 

Obrigado ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi felipe!

 

Seguinte, não sei se o teu Flash é o 8, mas no teu As tem coisas ali quem não precisão. E tambem no teu codigo de Php "envia.php" podia trocar umas coisa, inves de verificar se tem algum campo vazio no php, faz isso no flash é mais facil.

 

Tenta coloca o teu código As assim:

 

System.useCodepage = true;

enviar.onRelease = function() {

var enviaParaServidor:LoadVars = new LoadVars();

enviaParaServidor.nome = nome.text;

enviaParaServidor.email = email.text;

enviaParaServidor.cidade = cidade.text;

enviaParaServidor.telefone = assunto.text;

enviaParaServidor.mensagem = mensagem.text;

enviaParaServidor.sendAndLoad("envia.php", enviaParaServidor, "POST");

};

 

E teu Código Php assim:

 

<?php

$recipient = "exemplo@exemplo.com";

$subject = "Teste";

$corpo .= "Nome = ".$nome ."\n";

$corpo .= "email = ".$email ."\n";

$corpo .= "Cidade = ".$cidade ."\n";

$corpo .= "Telefone = ".$telefone ."\n";

$corpo .= "Mensagem = ".$mensagem ."\n";

$mailheaders = "From: exemplo@exemplo.com";

mail("$recipient", "$subject", "$corpo", "$mailheaders");

?>

 

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi felipe!

 

Seguinte, não sei se o teu Flash é o 8, mas no teu As tem coisas ali quem não precisão. E tambem no teu codigo de Php "envia.php" podia trocar umas coisa, inves de verificar se tem algum campo vazio no php, faz isso no flash é mais facil.

 

Tenta coloca o teu código As assim:

 

System.useCodepage = true;

enviar.onRelease = function() {

var enviaParaServidor:LoadVars = new LoadVars();

enviaParaServidor.nome = nome.text;

enviaParaServidor.email = email.text;

enviaParaServidor.cidade = cidade.text;

enviaParaServidor.telefone = assunto.text;

enviaParaServidor.mensagem = mensagem.text;

enviaParaServidor.sendAndLoad("envia.php", enviaParaServidor, "POST");

};

 

E teu Código Php assim:

 

<?php

$recipient = "exemplo@exemplo.com";

$subject = "Teste";

$corpo .= "Nome = ".$nome ."\n";

$corpo .= "email = ".$email ."\n";

$corpo .= "Cidade = ".$cidade ."\n";

$corpo .= "Telefone = ".$telefone ."\n";

$corpo .= "Mensagem = ".$mensagem ."\n";

$mailheaders = "From: exemplo@exemplo.com";

mail("$recipient", "$subject", "$corpo", "$mailheaders");

?>

 

Abraços!

 

É o 8 sim ... Vou tentar mais tarde .. porque agora está a maior correria aqui no trampo ...

Aí eu ja aproveito e te dou uma força com o Menu em Xml ..

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

HELP FORM.PHP

 

eu sou novo aqui e nao sei quase nada de PHP preciso da ajuda de vocês:

 

tenho um formulario de pedido em flash

function sendMsg(url:String):Void {

if (arguments.length === 0) {

return;

}

var enviaParaServidor:LoadVars = new LoadVars();

enviaParaServidor.nome = textNome.text;

enviaParaServidor.endereco = textEnd.text;

enviaParaServidor.cep = textCep.text;

enviaParaServidor.cidade = textCidade.text;

enviaParaServidor.email = textEmail.text;

enviaParaServidor.telefone = textTel.text;

enviaParaServidor.estado = comboEstado.selectedItem.label;

enviaParaServidor.codigo1 = comboCod1.selectedItem.label;

enviaParaServidor.codigo2 = comboCod2.selectedItem.label;

enviaParaServidor.codigo3 = comboCod3.selectedItem.label;

enviaParaServidor.codigo4 = comboCod4.selectedItem.label;

enviaParaServidor.codigo5 = comboCod5.selectedItem.label;

enviaParaServidor.codigo6 = comboCod6.selectedItem.label;

enviaParaServidor.quantidade1 = comboQuant1.selectedItem.label;

enviaParaServidor.quantidade2 = comboQuant2.selectedItem.label;

enviaParaServidor.quantidade3 = comboQuant3.selectedItem.label;

enviaParaServidor.quantidade4 = comboQuant4.selectedItem.label;

enviaParaServidor.quantidade5 = comboQuant5.selectedItem.label;

enviaParaServidor.quantidade6 = comboQuant6.selectedItem.label;

enviaParaServidor.tamanho1 = combotamanho1.selectedItem.label;

enviaParaServidor.tamanho2 = combotamanho2.selectedItem.label;

enviaParaServidor.tamanho3 = combotamanho3.selectedItem.label;

enviaParaServidor.mensagem = textMsg.text;

enviaParaServidor.sendAndLoad("form.php", enviaParaServidor, "POST");

 

 

 

só que não consigo fazer o form.php enviar as informações para o email (MESMO USANDO O FORM.PHP AQUI POSTADO)

ME AJUDEM POR FAVOR

Compartilhar este post


Link para o post
Compartilhar em outros sites

só que não consigo fazer o form.php enviar as informações para o email (MESMO USANDO O FORM.PHP AQUI POSTADO)

ME AJUDEM POR FAVOR

 

Olá fvalencio ...

...às vezes demora mas agente ajuda ! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Afinal de contas eu estava na mesma situação que você e se não fosse ajuda do pessoal eu estava até agora me matando ...

 

Mas vamos lá ...

 

1) Altere as instâncias dos Objetos ...

Ex: textNome (mude para:) nome -- de forma que seu AS fique assim:

CODE
function sendMsg(url:String):Void {

if (arguments.length === 0) {

return;

}

var enviaParaServidor:LoadVars = new LoadVars();

enviaParaServidor.nome = nome.text;

enviaParaServidor.endereco = endereco.text;

enviaParaServidor.cep = cep.text;

enviaParaServidor.cidade = cidade.text;

enviaParaServidor.email = email.text;

enviaParaServidor.telefone = telefone.text;

enviaParaServidor.estado = estado.selectedItem.label;

enviaParaServidor.codigo1 = codigo1.selectedItem.label;

enviaParaServidor.codigo2 = codigo2.selectedItem.label;

enviaParaServidor.codigo3 = codigo3.selectedItem.label;

enviaParaServidor.codigo4 = codigo4.selectedItem.label;

enviaParaServidor.codigo5 = codigo5.selectedItem.label;

enviaParaServidor.codigo6 = codigo6.selectedItem.label;

enviaParaServidor.quantidade1 = quantidade1.selectedItem.label;

enviaParaServidor.quantidade2 = quantidade2.selectedItem.label;

enviaParaServidor.quantidade3 = quantidade3.selectedItem.label;

enviaParaServidor.quantidade4 = quantidade4.selectedItem.label;

enviaParaServidor.quantidade5 = quantidade5.selectedItem.label;

enviaParaServidor.quantidade6 = quantidade6.selectedItem.label;

enviaParaServidor.tamanho1 = tamanho1.selectedItem.label;

enviaParaServidor.tamanho2 = tamanho2.selectedItem.label;

enviaParaServidor.tamanho3 = tamanho3.selectedItem.label;

enviaParaServidor.mensagem = mensagem.text;

enviaParaServidor.sendAndLoad("form.php", enviaParaServidor, "POST");

Pronto isso ja facilita um pouco as coisas ... Agora vamos ao PhP, copi e cole isso ..

(Obs: de uma checada na Sintaxe e tal , mesmop porque eu não testei esse aí .. Só escrevi mesmo .. rs)

 

form.php

 

CODE
<?php

# pegando as variaveis vindas do Flash

$nome = $_POST['nome'];

$endereco = $_POST['endereco'];

$cep = $_POST['cep'];

$cidade = $_POST['cidade'];

$email = $_POST['email'];

$telefone = $_POST['telefone'];

$estado = $_POST['estado'];

$codigo1 = $_POST['codigo1'];

$codigo2 = $_POST['codigo2'];

$codigo3 = $_POST['codigo3'];

$codigo4 = $_POST['codigo4'];

$codigo5 = $_POST['codigo5'];

$codigo6 = $_POST['codigo6'];

$quantidade1 = $_POST['quantidade1'];

$quantidade2 = $_POST['quantidade2'];

$quantidade3 = $_POST['quantidade3'];

$quantidade4 = $_POST['quantidade4'];

$quantidade5 = $_POST['quantidade5'];

$quantidade6 = $_POST['quantidade6'];

$tamanho1 = $_POST['tamanho1'];

$tamanho2 = $_POST['tamanho2'];

$tamanho3 = $_POST['tamanho3'];

$mensagem = $_POST['mensagem'];

 

# montando o corpo da mensagem

$para = 'seu e-mail'; //O e-mail para o qual deseja mandar;

$assunto = '..: Seu Assunto :..'; //O assunto;

$conteudo .= 'Nome: '.$nome.'\n';

$conteudo .= '<br>';

$conteudo .= 'Endereço: '.$endereco.'\n';

$conteudo .= '<br>';

$conteudo .= 'Cep: '.$cep.'\n';

$conteudo .= '<br>';

$conteudo .= 'Cidade: '.$cidade.'\n';

$conteudo .= '<br>';

$conteudo .= 'Telefone: '.$telefone.'\n';

$conteudo .= '<br>';

$conteudo .= 'Email: '.$email.'\n\n';

$conteudo .= '<br>';

$conteudo .= 'Estado: '.$estado.'\n';

$conteudo .= '<br>';

$conteudo .= 'Código 1: '.$codigo1.'\n';

$conteudo .= 'Código 2: '.$codigo2.'\n';

$conteudo .= 'Código 3: '.$codigo3.'\n';

$conteudo .= 'Código 4: '.$codigo4.'\n';

$conteudo .= 'Código 5: '.$codigo5.'\n';

$conteudo .= 'Código 6: '.$codigo6.'\n';

$conteudo .= '<br>';

$conteudo .= 'Quantidade 1: '.$quantidade1.'\n';

$conteudo .= 'Quantidade 2: '.$quantidade2.'\n';

$conteudo .= 'Quantidade 3: '.$quantidade3.'\n';

$conteudo .= 'Quantidade 4: '.$quantidade4.'\n';

$conteudo .= 'Quantidade 5: '.$quantidade5.'\n';

$conteudo .= 'Quantidade 6: '.$quantidade6.'\n';

$conteudo .= '<br>';

$conteudo .= 'Tamanho 1: '.$tamanho1.'\n';

$conteudo .= 'Tamanho 2: '.$tamanho2.'\n';

$conteudo .= 'Tamanho 3: '.$tamanho3.'\n';

$conteudo .= '<br>';

$conteudo .= '=============== Mensagem ===============';

$conteudo .= '<br>';

$conteudo .= ''.$mensagem.'\n';

 

$header = 'MIME-Version: 1.0\r\n';

$header = 'Content-type: text/html; charset=iso-8859-15\r\n';

$header = 'From:'.$nome.' <'.$email.'>';

 

# enviando a mensagem através do metodo mail()

mail($para, $assunto, $conteudo, $header);

 

//Então o meu problema é que os <br> não estão funcionando corretamente ..

?>

</body>

</html>

Bem é isso aí ...

Agora se o arquivo estiver na mesma pasta do servidor que o se .Swf, vai funcionar ... (vai enviar)

O meu problema é só os <br> (pula linha) que não estão funcionando por causa das Aspas que são necessárias para definir o valor da variável $conteudo .

 

Mas é isso aí vamos tentando né .. uma hora agente consegue ...

Abraço. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Felippe.88

Obrigado pela ajuda, mas ainda estou com dificuldades:

1° se eu mudar a instancia dos objetos tenho que mudar tb no palco e nas outras referencias ao objeto no AS?

2° Consigo receber a mensagem, mas os campos que são box chega (undefined) não sei pq?

os arquivos estao disponiveis Aqui

se você puder me ajudar agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Felipe eu consegui deixar o FORM.PHP em ordem linha a linha, mas ainda todos os meus campos box não são enviados para o php

<?php
# pegando as variaveis vindas do Flash
$nome = $_POST["nome"];
$endereco = $_POST["endereco"];
$cep = $_POST["cep"];
$cidade = $_POST["cidade"];
$email = $_POST["email"];
$telefone = $_POST["telefone"];
$estado = $_POST["estado"];
$codigo1 = $_POST["codigo1"];
$codigo2 = $_POST["codigo2"];
$codigo3 = $_POST["codigo3"];
$codigo4 = $_POST["codigo4"];
$codigo5 = $_POST["codigo5"];
$codigo6 = $_POST["codigo6"];
$quantidade1 = $_POST["quantidade1"];
$quantidade2 = $_POST["quantidade2"];
$quantidade3 = $_POST["quantidade3"];
$quantidade4 = $_POST["quantidade4"];
$quantidade5 = $_POST["quantidade5"];
$quantidade6 = $_POST["quantidade6"];
$tamanho1 = $_POST["tamanho1"];
$tamanho2 = $_POST["tamanho2"];
$tamanho3 = $_POST["tamanho3"];
$mensagem = $_POST["mensagem"];

# montando o corpo da mensagem
$para = "fabiovalencio@w3b.art.br";
$assunto = "Formulario de Pedido";
$conteudo .= "Nome:  ".$nome."<br>";
$conteudo .= "Endereço:  ".$endereco."<br>";
$conteudo .= "Cep:  ".$cep."<br>";
$conteudo .= "Cidade:  ".$cidade."<br>";
$conteudo .= "Telefone:  ".$telefone."<br>";
$conteudo .= "Email:  ".$email."<br>\n";
$conteudo .= "Estado:  ".$estado."<br>";
$conteudo .= "Código 1:  ".$codigo1."<br>";
$conteudo .= "Código 2:  ".$codigo2."<br>";
$conteudo .= "Código 3:  ".$codigo3."<br>";
$conteudo .= "Código 4:  ".$codigo4."<br>";
$conteudo .= "Código 5:  ".$codigo5."<br>";
$conteudo .= "Código 6: ". $codigo6."<br>";
$conteudo .= "Quantidade 1:  ".$quantidade1."<br>";
$conteudo .= "Quantidade 2:  ".$quantidade2."<br>";
$conteudo .= "Quantidade 3:  ".$quantidade3."<br>";
$conteudo .= "Quantidade 4:  ".$quantidade4."<br>";
$conteudo .= "Quantidade 5:  ".$quantidade5."<br>";
$conteudo .= "Quantidade 6:  ".$quantidade6."<br>";
$conteudo .= "Tamanho 1:  ".$tamanho1."<br>";
$conteudo .= "Tamanho 2:  ".$tamanho2."<br>";
$conteudo .= "Tamanho 3:  ".$tamanho3."<br>";
$conteudo .= "=============== Mensagem ===============<br>\n";
$conteudo .=  $mensagem;

$header = "Content-type: text/html; charset=iso-8859-1<br>";
$header .= "From: $email";

# enviando a mensagem através do metodo mail()
mail($para, $assunto, $conteudo, $header);

?>

alguma coisa esta errado com os combos

function sendMsg(url)
{
	if (arguments.length === 0)
	{
		return;
	} // end if
	var _loc2 = new LoadVars();
	_loc2.nome = textNome.text;
	_loc2.endereco = textEnd.text;
	_loc2.cep = textCep.text;
	_loc2.cidade = textCidade.text;
	_loc2.email = textEmail.text;
	_loc2.telefone = textTel.text;
	_loc2.estado = comboEstado.value;
	_loc2.codigo1 = comboCod1.selectedItem.value;
	_loc2.codigo2 = comboCod2.selectedItem.value;
	_loc2.codigo3 = comboCod3.selectedItem.value;
	_loc2.codigo4 = comboCod4.selectedItem.value;
	_loc2.codigo5 = comboCod5.selectedItem.value;
	_loc2.codigo6 = comboCod6.selectedItem.value;
	_loc2.quantidade1 = comboQuant1.selectedItem.data;
	_loc2.quantidade2 = comboQuant2.selectedItem.data;
	_loc2.quantidade3 = comboQuant3.selectedItem.data;
	_loc2.quantidade4 = comboQuant4.selectedItem.data;
	_loc2.quantidade5 = comboQuant5.selectedItem.data;
	_loc2.quantidade6 = comboQuant6.selectedItem.data;
	_loc2.tamanho1 = combotamanho1.selectedItem.label;
	_loc2.tamanho2 = combotamanho2.selectedItem.label;
	_loc2.tamanho3 = combotamanho3.selectedItem.label;
	_loc2.mensagem = textMsg.text;
	_loc2.sendAndLoad("form.php", _loc2, "_POST");
	_loc2.onData = function (dado)

Deixei até como VALUE DATA LABEL nenhum funciona

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom resolvido, meio na cambi mas ta funcionado....

 

todos os combo que nao estavam sendo enviados para o servidor.

foi resolvido com alterando

selectedItem

para

text

entao ficou

loc2.codigo1 = comboCod1.selectedItem.value;

loc2.codigo1 = comboCod1.text

 

valeu a ajuda de todos

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.