Donando 1 Denunciar post Postado Junho 8, 2010 Olá Amigos, criei um simples formularia em AS2.0 + PHP. Está tudo funcionando perfeitamente com excessão do subject da mensagem que é enviada. Não consigo utilizar acentos. Gostaria também de usar o "ç". abaixo o PHP: <?php $sugestao = $_POST['sugestao']; $email = $_POST['email']; // adicione seu e-mail na linha abaixo $recipient = "fernando@zerodpi.com"; $subject = "Site GM - Sugestao de Usuario"; $msg = "Sugestão: $sugestao"; //$msg = "nome: $nome \n\nE-mail: $email \n\nMensagem: $mensagem"; // adicione seu e-mail na linha abaixo $mailheaders = "From: webmaster@gloriamarinho.com.br"; $ok = mail("$recipient", "$subject", "$msg", "$mailheaders"); if($ok){ echo '&ok=1&'; }else { echo '&ok=2&'; } ?> Alguem poderia ajudar um novato em PHP? Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Weudes 0 Denunciar post Postado Junho 8, 2010 Experimente usar $subject = htmlentities($subject) ou $subject = htmlspecialchars($subject) Só pra constar, certa vez estava tendo problema com acentuação e só se resolver depois que eu usar urldecode... $subject = urldecode($subject) Abracos! Compartilhar este post Link para o post Compartilhar em outros sites
Dellano 0 Denunciar post Postado Junho 8, 2010 tenta assim vai no <head> da página que vai exibir as palavras com caracteres especiais se tiver um meta cassim <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> substitui por <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> se naum houver cola o código acima e vé se dá certo, tbm estava com esse mesmo problema com meu site na agenda de eventos mas substitui essa linha e os caracteres apareceram normalmente. Compartilhar este post Link para o post Compartilhar em outros sites
WarLiKe 0 Denunciar post Postado Junho 8, 2010 Tenta colocar assim: mail($recipient, mb_encode_mimeheader($subject,"UTF-8", "B", "\r\n"), $msg, $mailheaders); Compartilhar este post Link para o post Compartilhar em outros sites
Fernando Nito 1 Denunciar post Postado Junho 8, 2010 use no <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> e codificação do arquivo em ANSI no arquivo php adicione $subjectfinal = utf8_encode($subject); e altere assim a variavel $ok $ok = mail("$recipient", "$subjectfinal", "$msg", "$mailheaders"); o arquivo php tambem em codificação ANSI Compartilhar este post Link para o post Compartilhar em outros sites
Donando 1 Denunciar post Postado Junho 8, 2010 Weudes, vou testar sua sugestão e assim que tiver resposta eu posto aqui. Obrigado Dellano, esse código é para inserir no HTML ou no própio PHP ? Obrigado. Obrigado a todas as respostas. Assim que conseguir uma solução, eu postarei. Compartilhar este post Link para o post Compartilhar em outros sites
Dellano 0 Denunciar post Postado Junho 8, 2010 Weudes, vou testar sua sugestão e assim que tiver resposta eu posto aqui. Obrigado Dellano, esse código é para inserir no HTML ou no própio PHP ? Obrigado. Obrigado a todas as respostas. Assim que conseguir uma solução, eu postarei. eu uso em ambos e não tive problemas, mas use na página que vai exibir o que você escrever em os caracteres especiais. ai fica assim <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> Compartilhar este post Link para o post Compartilhar em outros sites
Donando 1 Denunciar post Postado Junho 19, 2010 Amigos, desculpem a ignorância em PHP. mas ainda não consegui resolver o problema. Fiz a alteração no head <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> mas não solucionou meu problema. Os e-mail continuam com problema de acenteação no subject. tentei as alterações no php, mas sou muito leigo em php, então não soube onde colocar, o que subistituir, etc. Gostaria da genteliza de vocês se puderem postar como ficaria meu codigo php para que o e-mail enviado não tivesse problemas com o subject. quero que no subject a palavra Sugestão venha no subject do e-mail corretamente. <?php $sugestao = $_POST['sugestao']; $email = $_POST['email']; // adicione seu e-mail na linha abaixo $recipient = "fernando@zerodpi.com"; $subject = "Site GM - Sugestao de Usuario"; $msg = "Sugestão: $sugestao"; //$msg = "nome: $nome \n\nE-mail: $email \n\nMensagem: $mensagem"; // adicione seu e-mail na linha abaixo $mailheaders = "From: webmaster@gloriamarinho.com.br"; $ok = mail("$recipient", "$subject", "$msg", "$mailheaders"); if($ok){ echo '&ok=1&'; }else { echo '&ok=2&'; } ?> como fica o codigo para que eu receba o e-mail com a palavra "Sugestão" no subject sem problema com o acento ? Amigo como coloco codificação em ANSI em cada um dos casos? obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Back-on 14 Denunciar post Postado Junho 19, 2010 Donando Tente decodificar os echo para utf8, fazendo deste método: Altere: { echo utf8_decode(&ok=1&); }else { echo utf8_decode(&ok=2&); } Simples, basta adicionar utf8_decode(), e na meta tag deixe como: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> O que ocorre? Simples, quando você escreve, ele vai escrever tudo sem codificação(sem caracteres, etc). E quando você adicionar a tag utf8_decode() você vai recodificar ele, mais para o metódo UTF-8. Compartilhar este post Link para o post Compartilhar em outros sites
Donando 1 Denunciar post Postado Setembro 19, 2010 Amigos, descubri o meu problema. Na verdade o erro não foi com o PHP e sim no Flash (AS 2.0). para trocar informações entre o flash e um arquivo php é preciso de um códgigo de action script para o flash enviar corretamente os caracteres. System.useCodepage = true; Obrigado a atenção de todos. tópico resolvido. Compartilhar este post Link para o post Compartilhar em outros sites