Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Ajuda com acentos em formulario com PHP


snouly

Pergunta

Olá pessoal, pesquisei no forum e me foi retornado a mensagem que não havia nada a respeito, achei meio estranho isso, mais em fim, vamos lá, estou fazendo um site em flash e nele tem um form de email que envia os dados em php, não manjo de php, pequei um código na net que deu certo mais o email chega sem os acentos, no lugar dos acentos chega um quadradinho, no firefox chega um quadradinho assim �, já tentei modificar com vários tutoriais, mais nunca dá certo, vou postar o código e se alguém puder me ajudar, preciso muito disso para hj, pois o site vai ao ar amanha, obrigado pessoal.

código

<?php

@extract($_POST);

$recipient = "meuemail@email.com.br";

$subject = "Contato Site";

$msg = "Nome: $nome\n

E-mail: $email\n

Telefone: $telefone\n

Celular: $celular\n

Cidade: $cidade\n

Mensagem: $mensagem";

$mailheaders = "From: $nome";

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

?>

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

ESerra, obrigado, vou tentar agora, valeu.

Agora o código ficou assim, não sei bem se é onde coloquei que coloca, me avise ok, vou fazer um teste. Muito Obrigado.

<?php

@extract($_POST);

$recipient = "agfo@agfo.com.br";

$subject = "Contato Site";

$msg = "Nome: $nome\n

E-mail: $email\n

Telefone: $telefone\n

Celular: $celular\n

Cidade: $cidade\n

Mensagem: $mensagem";

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers = "From: $nome";

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

?>
o Código ficou asim e não funcionou, ainda não aparece os acentos. O que pode estar errado?
<?php

@extract($_POST);

$recipient = "agfo@agfo.com.br";

$subject = "Contato Site";

$msg = "Nome: $nome\n

E-mail: $email\n

Telefone: $telefone\n

Celular: $celular\n

Cidade: $cidade\n

Mensagem: $mensagem";

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers = "From: $nome";

mail("$recipient", "$subject", "$msg", "$headers");

?>

Link para o comentário
Compartilhar em outros sites

  • 0

Se você for usar "iso-8859-1" você tem que decodificar os caracteres. utf8_decode($var);

O arquivo de onde está vindo os dados também influencia muito.

Tenta assim, e verifica qual o CharSet de onde contém o form.

$nome = utf8_decode($_POST["nome"]);
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

Link para o comentário
Compartilhar em outros sites

  • 0

ok Jefferson, irei tentar assim, aguenta ai para me ajudar caso não de certo, valeu...

Olá pessoal, poderiam me dizer se é assim que deve ficar o código?

<?php

@extract($_POST);

$recipient = "agfo@agfo.com.br";

$subject = "Contato Site";

$nome = utf8_decode($_POST["nome"]);

$email = utf8_decode($_POST["email"]);

$telefone = utf8_decode($_POST["telefone"]);

$celular = utf8_decode($_POST["celular"]);

$cidade = utf8_decode($_POST["cidade"]);

$mensagem = utf8_decode($_POST["mensagem"]);

$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers = "From: $nome";

mail("$recipient", "$subject", "$nome", "$email", "$telefone", "$celular", "$cidade", "$mensagem","$headers");

?>

Link para o comentário
Compartilhar em outros sites

  • 0

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= "From: $nome";

mail("$recipient", "$subject", "$msg", "$headers");

O seu sistema está em iso-8859-1? Se não estiver substituir por UTF-8 ou pelo charset que você efetivamente estiver usando.

Link para o comentário
Compartilhar em outros sites

  • 0

Estou usando UTF-8, já mudei para tal, agora vamos ver se vai dar certo....estou tentando

Agora está quase certo, a mensagem chegou asim...

Nome: Bruno MArc�rio E-mail: bruno@tentativa.com.br Telefone: 123456789 Celular: 123456789 Cidade: Goiânia Mensagem: teste número 12

Agora preciso ter acentuação no nome e ter quebra de linha, o código final esta assim...

<?php

@extract($_POST);

$recipient = "agfo@agfo.com.br";

$subject = "Contato Site";

$msg = "Nome: $nome\n

E-mail: $email\n

Telefone: $telefone\n

Celular: $celular\n

Cidade: $cidade\n

Mensagem: $mensagem";

$headers = 'MIME-Version: 1.0' . "\r\n";

$headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n";

$headers .= "From: $nome";

mail("$recipient", "$subject", "$msg", "$headers");

?>

Editado por snouly
Link para o comentário
Compartilhar em outros sites

  • 0

Pessoal, muito obrigado pela ajuda, em fim deu certo, segue o código final para avaliação da galera, se estiver tudo "certo" mesmo fica o código para quem tiver o mesmo problema.

Só mais uma dúvida, como ficaria para implementar nesse código para ele pegar um valor de um rádio button vindo do flash, com as opções de sim e não?

Código:

<?php

@extract($_POST);

$recipient = "agfo@agfo.com.br";

$subject = "Contato Site";

$nome = utf8_encode($nome);

$cidade = utf8_encode($cidade);

$mensagem = utf8_encode($mensagem);

$msg = "Nome: $nome\n

E-mail: $email\n

Telefone: $telefone\n

Celular: $celular\n

Cidade: $cidade\n

Mensagem: $mensagem";

$msg = nl2br($msg);

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n";
$headers .= "From: $nome";

mail("$recipient", "$subject", "$msg", "$headers");

?>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...