Ir para conteúdo

POWERED BY:

Arquivado

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

Freelife

[Resolvido] Form de email

Recommended Posts

Então pessoal, há um tempo atrás eu fiz um form e algumas pessoas me ajudaram a resolver alguns problemas porém ainda não funfa. O tópido é esse: http://forum.imasters.com.br/index.php?showtopic=314023

 

O que acontece é o seguinte: Tem os campos nome, email, mensagem. o email e a mensamge chegam, porém com a formatação html... tipo...

<!-- <font ...>email@host....</font> --!>

 

já o campo nome não está chegando.

 

podem me ajudar?

 

Vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom amigo como eu já lhe ajudei... uma vez vamos de novo

 

Seu servidor aceita arquivos java???

 

pois você disse que o arquivo.js não tinha sido encontrado......

 

Se não aceitar arquivos js não vai ter como rodar um formulário a partir do flash... ou qualquer outro tipo de arquivo em flash

 

Então sugiro que você teste tudo antes...

 

PHP se rodar faça um formulário em php ai é só mandar um clic redirecionando para a página onde se encontra o php...

 

Eu fiz o mesmo formulário de uma outra forma...

 

Se quiser seguir o passo a passo se encontra nesse local

http://forum.imasters.com.br/index.php?showtopic=314180

 

Abraços

Qualquer duvida posta ai que eu ajudo

Compartilhar este post


Link para o post
Compartilhar em outros sites

caraca meu... beleza berseck?!

 

então cara... sei que já tá chata essa situação mas...

 

cara eu não fiz nada de mais... semplesmente baixei os arquivos do seu tutorial, abri o arquivo mail.php e coloquei o meu email onde pedia... adivinha o que aconteceu?!!!

 

o email chegou assim:

 

nome:  

 E-mail:  

 Mensagem: 
Nenhum vírus encontrado nessa mensagem recebida.
Verificado por AVG - http://www.avgbrasil.com.br 
Versão: 8.0.175 / Banco de dados de vírus: 270.9.8/1800 - Data de Lançamento: 19/11/2008 18:55

Se eu envio com o meu arquivo mail.php ele chega assim:

 

nome: <TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">freelife</FONT></P></TEXTFORMAT>

 E-mail:<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">meuemail@host.com</FONT></P></TEXTFORMAT>

 Mensagem: <TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">teste de email</FONT></P></TEXTFORMAT>

Nenhum vírus encontrado nessa mensagem recebida.
Verificado por AVG - http://www.avgbrasil.com.br 
Versão: 8.0.175 / Banco de dados de vírus: 270.9.8/1800 - Data de Lançamento: 19/11/2008 18:55

basicamente se pensarmos o meu form está enviando o email, a única coisa é que ele está chegando com essas tags em volta... mas o form tá funfando.

 

Sobre o seu form eu descobri que se fizer assim:

$msg = "nome: $nome \n\n E-mail: $email \n\n Mensagem: $mensagem";
ele não funfa no servidor pois o meu servidor é linux, ele só manda o conteúdo se ficar assim o código:

$msg = "nome: {$_REQUEST["nome"]}\n\n E-mail:{$_REQUEST["email"]}\n\n Mensagem: {$_REQUEST["mensagem"]}\n";

Pelo que eu entendi do que lí essa forma $nome está em desuso pois descobriram que ela não é segura, por isso começaram a usar {$_REQUEST["nome"]}.

 

Gostaria que alguém confirmasse isso, pois, não sei se está correto.

 

E se alguém souber como é que resolvo o problema das tags eu agradeço.

 

Vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Procedimento número 1

 

No segundo frame você vai

 

Apagar a linha que envia as informações para o mail.php

 

E vai colocar as linhas

 

trace(nome);

trace(email);

trace(mensagem);

 

 

E não o poste na web teste localmente

 

Com esse comando deve aparecer no output as coisas que você escreveu nos locais, nome, email e mensagem.

 

Caso não aparecer

Verifique se as imput text box estão corretamente instânciadas.

 

Caso esteja tudo normal sem nenhum problema

 

Sugiro que você utilize um outro método para pegar as informações no mail.php

 

como por exemplo

 

$nome = $_POST["nome"];

 

E assim por diante para ver se aparecem as informações

 

Da uma testada e me diz o que acontece por favor?

 

Eu vou aprimorar meu tutorial com todos os possiveis erros e colocar as soluções lá mesmo

 

Para que a galera tenha um tutorial completo com diversas soluções possiveis.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dia galera...

 

Entounce... testei com as dicas que você deu e na janela output saiu isso...:

 

<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">teste</FONT></P></TEXTFORMAT>
<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">email@host.com</FONT></P></TEXTFORMAT>
<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">Teste</FONT></P></TEXTFORMAT>

Foi isso... o que dá pra entender é que o sistema está enviando as informações, porém estão codificadas errado, talvez exista alguma coisa que tem que ser feita para formatar sem as tags.

 

 

Abraços e vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

??????????????

 

Como pode sair codificação HTML em um arquivo flash??????

Tem certeza que tu fez o que eu falei??

 

Só testou o arquivo fla?

 

Pois se foi só o arquivo não era para aparecer formatação html alguma...

 

Afinal flash não usa HTML ¬¬

 

Quer postar todos os códigos do seu arquivo por favor?

 

Todos os actions

Todo o PHP

 

Para eu dar uma analisada?

 

Só copiar e colar o código

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza...

 

seguinte. o meu form é um pouco diferente do seu, só tem 1 frame e o código é simples, mas é a mesma coisa. Segue o código:

1º Frame:

nome = "";
email = "";
mensagem = "";
status = "";

Código do botão enviar:

on (release) {
if (nome == "") {
  status = "O nome esta vazio";
  selection.setFocus("nome");
} else if (email == "") {
  status = "O e-mail está vazio";
  Selection.setFocus("email");
} else if (mensagem == "") {
  status = "Faltou a mensagem";
  Selection.setFocus("mensagem");
} else {
  loadVariablesNum("mail.php", 0, "POST");
  status = "Mensagem Enviada";
}

}

Usando só isso já Saí os dados na janela out.

 

o php:

<?php
// adicione seu e-mail na linha abaixo
$recipient = "mail@host.org";

$subject = "formulrio de contato";

$msg = "nome: {$_POST["nome"]}\n\n E-mail:{$_POST["email"]}\n\n Mensagem: {$_POST["mensagem"]}\n";

// adicione seu e-mail na linha abaixo
$mailheaders = "From: mail@host.org";

mail("$recipient", "$subject", "$msg", "$mailheaders");
?>

é isso.

 

Vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara...

 

o erro continua que *+#$%...

 

eu testei direto pelo site... olha o que recebi:

 

nome: <TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">teste1</FONT></P></TEXTFORMAT>

 E-mail:<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">email@host.com</FONT></P></TEXTFORMAT>

 Mensagem: <TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">Teste de envio de email pelo site</FONT></P></TEXTFORMAT>

Nenhum vírus encontrado nessa mensagem recebida.
Verificado por AVG - http://www.avgbrasil.com.br 
Versão: 8.0.175 / Banco de dados de vírus: 270.9.9/1802 - Data de Lançamento: 20/11/2008 19:28

Sei lá o que é que tá acontecendo.

 

Tá difícil.

 

vlw

 

obs,: se você tiver um email de teste e quiser, me passa o endereço que coloco ele no php pra testar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom vamos lá

 

Codigo do php:

<?php
// adicione seu e-mail na linha abaixo
$recipient = "seuemail@mail.com";

$subject = "formulário de contato";

$msg = "nome: {$_POST["nome"]}\n\n E-mail:{$_POST["email"]}\n\n Mensagem: {$_POST["mensagem"]}\n";

// adicione seu e-mail na linha abaixo
$mailheaders = "From: {$_POST["email"]}";

mail("$recipient", "$subject", "$msg", "$mailheaders");
?>

Código do botão:

on (release) {
if (nome == "") {
  status = "O nome esta vazio";
  selection.setFocus("nome");
} else if (email == "") {
  status = "O e-mail está vazio";
  Selection.setFocus("email");
} else if (mensagem == "") {
  status = "Faltou a mensagem";
  Selection.setFocus("mensagem");
} else {
  var msg:LoadVars = new LoadVars;
  var enviar:LoadVars = new LoadVars;
  msg.nome = nome;
  msg.email = email;
  msg.mensagem = mensagem;
  msg.sendAndLoad("mail.php",enviar,"POST");
}
}

Caso não tenha funcionado com o que você postou antes quem sabe esse lhe ajude =D

 

Pq pelo que to vendo o flash e que não estava passando informações ao seu php...

 

Talvez com esse outro metodo ai funcione...

 

A lembre se de usar UTF8 lá da vida... o código em php para que ele coloque os acentos :P

 

Que eu sempre esqueço de fazer formulários com isso

^^

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom... testei esse...e o resultado:

 

nome: <TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">teste6</FONT></P></TEXTFORMAT>

 E-mail:<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">email@host.com</FONT></P></TEXTFORMAT>

 Mensagem: <TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="15" COLOR="#000000" LETTERSPACING="0" KERNING="0">Teste de envio de email pelo site</FONT></P></TEXTFORMAT>

sobre o utf... eu não sei aplicar ele no php, tentei aplicar isso, mas tbém não deu certo, como não sei onde colocar o email nem chegou;

 

"Content-type: text/html; charset=iso-8859-1\r\n";

 

 

vlw

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom o principal chegou =D

 

as informações do cliente :P

 

O problema agora está no seu e-mail ><

 

Que não interpreta codificação HTML

 

Procure nas propriedades do seu e-mail

 

Para ver quais as opções de recebimento você tem...

 

Procure uma que diga que é formato HTML

 

Que terá seu problema resolvido

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa...

 

então... o email que usei para teste para não ficar dúvidas foi o hotmail.

 

isso já tá chato né?!... mas fazer o quê, é um problema, e se conseguirmos resolver pelo menos outra pessoa não passará pela mesma situação.

 

alguém mais se habilita a tentar?

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

fala galera... beleza?!

 

 

olha só eu tentei de novo, mas mesmo assim não funcionou.

testei com 3 emails diferentes mas mesmo assim o email chega com as tags html.

 

Será que alguém mais poderia dar uma ajuda?

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

isso é duvida de PHP e não flash....

 

 

mas teste colocar os header assim:

 

 

<?php
// adicione seu e-mail na linha abaixo
$recipient = "mail@host.org";

$subject = "formulrio de contato";

$msg = "nome: {$_POST["nome"]}\n\n E-mail:{$_POST["email"]}\n\n Mensagem: {$_POST["mensagem"]}\n";


$mailheaders = "MIME-Version: 1.0\r\n";
$mailheaders .= "Content-type: text/html; charset=UTF-8\r\n";
// adicione seu e-mail na linha abaixo
$mailheaders .= "From: mail@host.org \r\n";

mail("$recipient", "$subject", "$msg", "$mailheaders");
?>

 

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caraca... esse é um problema que não achei a solução até agora...

 

não sei o que aconteceu, mas não funfa de jeito nenhum!

 

O email chega com todos os testes que estamos fazendo, mas sempre com tags html.

 

Não sei mais o que fazer. Esse último teste que o Eder me passou, tbém fiz, e adivinhem?!!!... Nada! chegou do mesmo jeito, com tags html.

 

Hoje a noite vou postar os arquivos, se alguém quiser pegar pra testar.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom amigo.....

 

Se é erro de php... ai você deve se dirigir a parte de php... e não flash

 

Eu não sei porque acontece isso... deve ser alguma configuração do servidor no qual você está hospedando o seu site de testes...

 

Procure saber com eles como faz para resolver no help desk... e a melhor maneira de resolver esse tipo de problema

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu galera...

 

vou falar com o pessoal do php e assim que descobrir o que está errado, postarei a resposta.

 

Desculpem, ontem esqueci de postar os arquivos, mas desse fds não passa.

 

Abraços e valeu por enquanto.

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.