ment0r 1 Denunciar post Postado Setembro 17, 2013 Saudações a todos. Bom amigos, meu problema é o seguinte: uso um formulário em uma determinada página de meu sistema para envio de email. O envio é feito normalmente (phpMailer), mas tudo na mensagem sai errado, ou seja, com caracteres especiais. (Ex.: Olá, meu nome é:). Assunto, mensagem, tudo que tem ascento e/ou ç sai "zuado".Já tentei usar Content-type diferentes, header(Content-type...) nada funcionou. Engraçado que eu copiei e colei o código de uma outra página, de um outro site que eu fiz, ambos hospedados na mesma empresa.Se alguém tiver alguma outra ideia do que eu possa fazer pra resolver isso... Agradeço muito.Boa noite a todos. Compartilhar este post Link para o post Compartilhar em outros sites
raonibs 64 Denunciar post Postado Setembro 18, 2013 Verifique no HTML se o charset está correto. Tanto a codificação da string de entrada e da string de saída tem de ser as mesma. Ex.: <meta charset="UTF-8"> Veja: http://www.supertelnet.com/artigos/uft8-para-iso-8859-1-converter-texto-html Voce também pode converter a string de saida do PHPMailer com htmlentities(). Ou talvez converter a string de entrada com o htmlentities() e a de saida com html_entity_decode(). Compartilhar este post Link para o post Compartilhar em outros sites
ment0r 1 Denunciar post Postado Setembro 19, 2013 Primeiramente muito obrigado por sua ajuda Raoni Botelho Sporteman. Fiz um teste rápido usando html_entity_decode() em uma das string de saída e resolveu, mas preciso testar no código inteiro, pois há várias outras.Assim que tudo for testado eu posto aqui pra todos. Mais uma vez, obrigado pela ajuda. Compartilhar este post Link para o post Compartilhar em outros sites
ment0r 1 Denunciar post Postado Setembro 20, 2013 Após vários e vários testes, ainda não deu certo rsrs. Bom, a mensagem (body) do e-mail está correta, mas o nome do destinatário (que é pego via formulário) não fica corretamente. Já fiz de tudo: htmlentities(), html_entity_decode(), Header... mas nada adiantou. Só que em uma outra página de envio de e-mail, fica tudo codificado, estranho... pelo fato de que ambas estão no mesmo servidor e é ctrl c / ctrl v uma da outra. Por fim, qdo enviado para o gmail, dá tudo certo! Vai entender.Se alguém souber de mais alguma coisa e puder me passar, eu agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
vonzuben 12 Denunciar post Postado Setembro 21, 2013 Coloca assim no seu index <?php ini_set('default_charset','UTF-8');?> Coloca assim na mensagem do PHP $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=utf-8\n"; No hotmail você terá problema de acentuação no assunto, pois faça assim $subject = '=?UTF-8?B?'.base64_encode("Confirmação de cadastro").'?='; Vai ficar assim $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=utf-8\n"; $subject = '=?UTF-8?B?'.base64_encode("Confirmação de cadastro").'?='; Compartilhar este post Link para o post Compartilhar em outros sites
ment0r 1 Denunciar post Postado Setembro 25, 2013 Caros amigos, primeiramente muito obrigado pela ajuda de todos. O negócio é o seguinte: está muito confuso essa minha situação. Eu criei uma variável $mensagem, nela eu vou concatenando o que será exibido no corpo do e-mail.Acontece que alguns trechos dessa mensagem saem com acentos codificados e outros não. Segue um pequeno exemplo: $nome = $_POST['nome']; // suponhamos que o $nome seja João.$mensagem .= 'Olá'.$_POST['nome'].'você mora em São João' Então nessa mensagem sairia (exemplo):"Olá JoÜo, você mora em SÜo JoÜo" Ou seja, tando vindo via POST ou então sendo declarada na própria página, da errado. Já usei: <?php ini_set('default_charset','UTF-8');?> <meta charset="UTF-8"> <?php Header...?> Não consigo resolver. O servidor que hospedo usa UTF-8 e minhas páginas estão salvas em UTF-8 (sem bom). Por favor, espero que alguém possa sanar esse minha dúvida (dor de cabeça). Desde já muito obrigado a todos. Compartilhar este post Link para o post Compartilhar em outros sites
vonzuben 12 Denunciar post Postado Outubro 6, 2013 Faz o que eu escrevi e no MYSQL coloca tudo utf8_unicode_ci que não tem erro Compartilhar este post Link para o post Compartilhar em outros sites