quinhosp Posted August 19, 2011 Report Share Posted August 19, 2011 Boa madrugada!Eu tenho um form de cadastro pra receber novidades, com nome email, quando eu preencho os campos sem colocar acento tudo funciona corretamente.O problema é que quando eu coloco acento no campo nome, ex: Márcio, o email não chega ao destino.Alguém pode me ajudar? Quote Link to comment Share on other sites More sharing options...
0 MLeandroJr! Posted August 19, 2011 Report Share Posted August 19, 2011 Como este campo está sendo tratado? Quote Link to comment Share on other sites More sharing options...
0 Willian Gustavo Veiga Posted August 19, 2011 Report Share Posted August 19, 2011 Mostre o seu código.Um abraço. Quote Link to comment Share on other sites More sharing options...
0 quinhosp Posted August 19, 2011 Author Report Share Posted August 19, 2011 (edited) ai seguem os codigos:form<div class="chamada-novidades"> <h2 class="fonte">Novidades</h2> <p>Recebas as novidades no seu email. Praticidade que você merece. Cadastre-se!</p> <form name="form-newsletters" method="post" action="envia-form2.php"> <ul> <li> <label>Nome:</label> <input type="text" id="FN_nome" name="nome" class="campo validar" title="Nome{tipo:'obrigatorio'}" /> </li> <li> <label>E-mail:</label> <input type="text" id="FC_email" name="email" class="campo validar" title="E-mail{tipo:'email',min:1}" /> </li> <li> <input type="reset" value="Limpar" class="reset" title="Limpar campos do formulário" /> <input type="submit" title="Cadastrar" value="Cadastrar" class="mais" /> </li> </ul> </form> </div> envia-form2.php <?php $nome = $_POST["nome"]; $email = $_POST["email"]; $msg .= "QUERO RECEBER NOVIDADES - BUFFET\n\n"; $msg .= "Nome:\t$nome\n\n"; $msg .= "Email:\t$email\n\n"; $cabecalho = "From: $nome";#Titulo da mensagem mail("buffet@gmail.com.br", "Quero Receber Novidades", $msg, $cabecalho); echo "<script>window.location.href='index.php'</script>"; ?> aqui segue o codigo de validação do form caso obrigatorio // Obrigatorio case "obrigatório": case "obrigatorio": if(validar.valor.replace(/[\s\.,()_-]/g,"").length == 0){ validar.valido = false; validar.msg = "deve ser preenchido!"; } break;// Obrigatorio case "obrigatório": case "obrigatorio": if(validar.valor.replace(/[\s\.,()_-]/g,"").length == 0){ validar.valido = false; validar.msg = "deve ser preenchido!"; } break; Edited August 19, 2011 by quinhosp Quote Link to comment Share on other sites More sharing options...
0 Willian Gustavo Veiga Posted August 20, 2011 Report Share Posted August 20, 2011 Tente assim:<?php $nome = $_POST["nome"]; $email = $_POST["email"]; $msg .= "QUERO RECEBER NOVIDADES - BUFFET\n\n"; $msg .= "Nome:\t$nome\n\n"; $msg .= "Email:\t$email\n\n"; $cabecalho = "From: $nome";#Titulo da mensagem $cabecalho .= "Content-type: text/plain; charset=utf-8\r\n"; mail("buffet@gmail.com.br", "Quero Receber Novidades", $msg, $cabecalho); echo <script>window.location.href='index.php'</script>"; ?>Sempre leia os manuais das funções no site do PHP.Um abraço. Quote Link to comment Share on other sites More sharing options...
0 quinhosp Posted August 20, 2011 Author Report Share Posted August 20, 2011 Willian Veiga, boa tarde!Então, eu testei não funciona deste jeito. Quando eu tiro $cabecalho .= "Content-type: text/plain; charset=utf-8\r\n";, o email chega ao destino daquela foma, ou seja, quando eu não coloco acento na string "nome = Márcio" ela vai, porém quando coloco o acento o email não chega.Com o código adicionado, nenhuma forma de email chega. Quote Link to comment Share on other sites More sharing options...
0 Willian Gustavo Veiga Posted August 23, 2011 Report Share Posted August 23, 2011 Leia este artigo (excelente).Um abraço. Quote Link to comment Share on other sites More sharing options...
0 quinhosp Posted August 25, 2011 Author Report Share Posted August 25, 2011 Willian, bom dia!Eu percebi aqui nos testes que fiz, que somente os headers não aceitam a string com acento.na mensagem vai tudo acentuado normalmente. Quote Link to comment Share on other sites More sharing options...
Question
quinhosp
Boa madrugada!
Eu tenho um form de cadastro pra receber novidades, com nome email, quando eu preencho os campos sem colocar acento tudo funciona corretamente.
O problema é que quando eu coloco acento no campo nome, ex: Márcio, o email não chega ao destino.
Alguém pode me ajudar?
Link to comment
Share on other sites
7 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.