Bem pessoal estou com problemas no acento em meu form em php.
Eu já sei do UTF-8 e do ISO-8859-1.
O problema é se eu coloco ISO-8859-1 da problema em acentuação nas perguntas e se coloco UTF-8 da nas respostas.
O que quero dizer com perguntas e respostas?
Exemplo:
E-mail : joao@hotmail.com
A pergunta é o E-mail e a resposta o joao@hotmail.com.
No que eu for alterar no corpo do e-mail que no meu caso se chama $mens, vai prejudicar um ou outros em vez de beneficiar os dois no português.
E mais uma dúvida tem como no $mens a pergunta desaparecer se não responderem no formulário?Por que depois quando vai ver no email fica uma pergunta vazia.
Exemplo:
E-mail:
Peço por favor e obrigado.
- Fórum WMO
- → Viewing Profile: Tópicos: Dhio
Community Stats
- Group Usuários
- Active Posts 12
- Profile Views 494
- Member Title Novato no fórum
- Age Age Unknown
- Birthday Birthday Unknown
-
Sexo
Não informado
0
Neutral
User Tools
Friends
Dhio hasn't added any friends yet.
Latest Visitors
-
Guest
04/11/2007, 03:41
Topics I've Started
Problemas Em Acentuação
21/09/2009, 16:03
Multiple Com Problemas Em Php
17/09/2009, 14:38
Olá Pessoal,
Eu tenho um problema, no formulário em html tenho um campo multiple que com o ctrl seleciono mais do que uma alternativa, mais quando você vai checar seu e-mail só aparece uma das três que você selecionou.
Como fazer para aparecer os três na mesma linha apenas separando por virgula?
Meu código:
email.htm
envia3_2.php
Eu achei uns códigos que ajuda nisso mais usa o echo, tem como usar o $mens?Por que é lá que coloco o formulário respondido que vai no e-mail.
Obrigado.
Eu tenho um problema, no formulário em html tenho um campo multiple que com o ctrl seleciono mais do que uma alternativa, mais quando você vai checar seu e-mail só aparece uma das três que você selecionou.
Como fazer para aparecer os três na mesma linha apenas separando por virgula?
Meu código:
email.htm
<html> <head> <script language="javascript"> function checa_formulario(email){ if (email.nome_para.value == ""){ alert("Por Favor nao deixe o nome em branco!!!"); email.nome.focus(); return (false); } if (email.email.value == ""){ alert("Nao deixe o email destinatario em branco!!!"); email.email.focus(); return (false); } if (email.assunto.value == ""){ alert("Nao deixe o assunto em branco!!!"); email.assunto.focus(); return (false); } } </script> <title>Enviando e-mail com anexo através do PHP</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- .email { text-transform: lowercase; } .texto { color: #0000FF } .style1 {color: #FF0000} --> </style> </head> <body onload="document.email.nome_para.focus();"> <form onsubmit="return checa_formulario(this)" action="envia3_2.php" method="post" enctype="multipart/form-data" name="email"> <input type=hidden name="recipient" value='criacao@imaxcomunicacao.com.br'> <input type=HIDDEN name="subject" value="Trabalhe Conosco"> <input type=hidden name="redirect" value='http://www.strategique.com.br/Obrigadotra.htm'> <h1 align="center" class="style1">Formulário de email com anexo </h1> <table width="32%" border="0" align="center"> <tr> <td><div align="right"><span class="texto">Para</span></div></td> <td><input name="nome_para" type="text" id="nome_para"></td> </tr> <tr> <td><div align="right" class="texto">Email</div></td> <td><input name="email" type="text" id="email"> </tr> <tr> <td><div align="right" class="texto">Trabalho</div></td> <td><input type=checkbox name=Trabalho value="Promotor(a)_de_vendas"> </font><FONT face="Tahoma" size=2 align=center><span class="style2">Promotor(a) de vendas <br /> <input type=checkbox name=Trabalho1 value="Coordenador(a)_de_equipe"> Coordenador(a) de equipe<br /> <input type=checkbox name=Trabalho2 value="Serviços_de_apoio"> Serviços de apoio<br /> <input type=checkbox name=Trabalho3 value="Serviços_de_entrega_de_folhetos"> Serviços de entrega de folhetos </span></font></td> </tr> <tr> <td><div align="right" class="texto">Deficiencia</div></td> <td><select class=InputText size=5 multiple="multiple" style=width:250px name="Deficiencia"> <option value="Auditivo Não-Oralizado">Auditivo Não-Oralizado</option> <option value="Auditivo Oralizado">Auditivo Oralizado</option> <option value="Cego">Cego</option> <option value="Físico Amputado Inferior">Físico Amputado Inferior</option> <option value="Físico Amputado Superior">Físico Amputado Superior</option> <option value="Físico Membros Inferiores">Físico Membros Inferiores</option> <option value="Físico Membros Superiores">Físico Membros Superiores</option> <option value="Intelectual">Intelectual</option> <option value="Nanismo">Nanismo</option> <option value="Visual Subnormal">Visual Subnormal</option> </select></td> </tr> <tr> <td><div align="right" class="texto">Assunto</div></td> <td><select name=Meios_de_Locomocao size=1 class=InputText style=width:200px> <option value="" selected>Selecione</option> <option value="Condutor de Veículo Próprio">Condutor de Veículo Próprio</option> <option value="Passageiro de Veículo Próprio">Passageiro de Veículo Próprio</option> <option value="Transporte Público">Transporte Público</option> <option value="Transporte Público Especializado">Transporte Público Especializado</option> </select></td> </tr> <tr> <td><div align="right" class="texto">Assunto</div></td> <td><input name="assunto" type="text" id="assunto"></td> </tr> <tr> <td><div align="right" class="texto">Mensagem</div></td> <td><textarea name="mensagem" cols="50" rows="10" id="mensagem"></textarea></td> </tr> <tr> <td><div align="right" class="texto">Anexo</div></td> <td><input name="arquivo" type="file"></td> </tr> <tr> <td> </td> <td><input type="submit" name="Submit" value="Enviar"></td> </tr> </table> </form> </body> </html>
envia3_2.php
<?php /*Verifica qual é o sistema operacional e ajusta a quebra da linha funcional do cabeçalho de e-mail para Windows e Linux Existem diferenças entre o ambiente Linux e Windows, por isso a validação abaixo configura a variável $quebra_linha com o caracter correto para cada sistema_operacional Windows utiliza "\r\n" Linux utiliza "\n" */ if(PHP_OS == "Linux") $quebra_linha = "\n"; //Se for Linux elseif(PHP_OS == "WINNT") $quebra_linha = "\r\n"; // Se for Windows else die("Este script não esta preparado para funcionar com o sistema operacional de seu servidor"); //define os dados do remetente (deve ser um e-mail do seu domínio conforme determina a RFC 822) $email_to = 'criacao@imaxcomunicacao.com.br'; //pego os dados enviados pelo formulário $nome_para = $_POST["nome_para"]; $email = $_POST["email"]; $mensagem = $_POST["mensagem"]; $assunto = $_POST["assunto"]; $trabalho = $_POST["Trabalho"]; $trabalho1 = $_POST["Trabalho1"]; $trabalho2 = $_POST["Trabalho2"]; $trabalho3 = $_POST["Trabalho3"]; $deficiencia = $_POST["Deficiencia"]; $meios_de_locomocao = $_POST["Meios_de_Locomocao"]; //formato o campo da mensagem $mensagem = wordwrap( $mensagem, 50, "<br>", 1); //valido os emails if (!ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$", $email)){ echo('<center>Digite um email valido</center>'); echo('<center><a href="java script:history.go(-1)">Voltar</center></a>'); exit; } $arquivo = isset($_FILES["arquivo"]) ? $_FILES["arquivo"] : FALSE; if(file_exists($arquivo["tmp_name"]) and !empty($arquivo)){ $fp = fopen($_FILES["arquivo"]["tmp_name"],"rb"); $anexo = fread($fp,filesize($_FILES["arquivo"]["tmp_name"])); $anexo = base64_encode($anexo); fclose($fp); $anexo = chunk_split($anexo); $mensagem_cabecalho = '<P><FONT color=#3300ff size=5>Mensagem entregue com sucesso!!!</FONT></P> <P>Esse email é um teste enviado no formato HTML via PHP mail();!</P> <TABLE> <TBODY> <TR> <TH bgColor=#ff6666><FONT color=#ffffff><SPAN style="BACKGROUND-COLOR: #ff0000">Locaweb</SPAN></FONT></TH> <TR> <TD align=middle>Keep it simple</TD></TR></TBODY></TABLE>'; $boundary = 'XYZ-' . date("dmYis") . '-ZYX'; $mens = '--' . $boundary . $quebra_linha; $mens .= 'Content-Transfer-Encoding: 8bits' . $quebra_linha; $mens .= 'Content-Type: text/html; charset="ISO-8859-1"' . $quebra_linha . $quebra_linha; $mens .= $mensagem_cabecalho . $quebra_linha; $mens .= "Assunto: $assunto" . '<br>' . $quebra_linha = "\r\n"; $mens .= "Trabalho: $trabalho" . '<br>' . $quebra_linha = "\r\n"; $mens .= "Trabalho: $trabalho1" . '<br>' . $quebra_linha = "\r\n"; $mens .= "Trabalho: $trabalho2" . '<br>' . $quebra_linha = "\r\n"; $mens .= "Trabalho: $trabalho3" . '<br>' . $quebra_linha = "\r\n"; $mens .= "Deficiencia: $deficiencia" . '<br>' . $quebra_linha = "\r\n"; $mens .= "Meios: $meios_de_locomocao" . '<br>' . $quebra_linha = "\r\n"; $mens .= "Mensagem: $mensagem" . $quebra_linha = "\r\n"; $mens .= '--' . $boundary . $quebra_linha; $mens .= 'Content-Type: ' . $arquivo["type"] . $quebra_linha; $mens .= 'Content-Disposition: attachment; filename="' . $arquivo["name"] . '"' . $quebra_linha; $mens .= 'Content-Transfer-Encoding: base64' . $quebra_linha . $quebra_linha; $mens .= $anexo . $quebra_linha; $mens .= '--' . $boundary . '--' . $quebra_linha; $headers = 'MIME-Version: 1.0' . $quebra_linha; $headers .= 'From: ' . $email_to . $quebra_linha; $headers .= 'Return-Path: ' . $email . $quebra_linha; $headers .= 'Content-type: multipart/mixed; boundary="' . $boundary . '"' . $quebra_linha; $headers .= $boundary . $quebra_linha; //envio o email com o anexo mail($email_to,"Trabalhe Conosco",$mens,$headers); echo"<meta HTTP-EQUIV='Refresh' CONTENT='0;URL=http://www.strategique.com.br/Obrigadotra.htm'>"; } //se nao tiver anexo else{ $headers = 'MIME-Version: 1.0' . $quebra_linha; $headers .= 'Content-type: text/html; charset=iso-8859-1' . $quebra_linha; $headers .= 'From: ' . $email_to . $quebra_linha; $headers .= 'Return-Path: ' . $email . $quebra_linha; //envia o email sem anexo mail($email_to,"Trabalhe Conosco",$mens,$headers); echo"<meta HTTP-EQUIV='Refresh' CONTENT='0;URL=http://www.strategique.com.br/Obrigadotra.htm'>"; } ?>
Eu achei uns códigos que ajuda nisso mais usa o echo, tem como usar o $mens?Por que é lá que coloco o formulário respondido que vai no e-mail.
Obrigado.
Formulário
03/09/2009, 17:49
Olá Pessoal,
Estou com um problema em um formulário, eu quero que no e-mail onde vai para empresa o to(de) fica o e-mail que cliente digitou no formulário e o from(para) fica o e-mail da nossa empresa. Mais acontece que não consigo fazer isso, da http 500, então eu coloco o e-mail da nossa empresa para o to(de) e from(para) para funcionar, mais fica horrivel.
Resumindo, quero colocar o: $email = $_POST["email"];
Que é o e-mail onde o cliente vai colocar no formulário.
No: $headers .= 'From: ' . $email . $quebra_linha;
Mais ao fazer isso da http 500 e no mail eu coloco headers e etc: mail($email_to,
"Formulário",
$mens
,$headers,
);
Meu código:
email.htm
envia2.php
Muito obrigado e desculpa o incomodo.
Estou com um problema em um formulário, eu quero que no e-mail onde vai para empresa o to(de) fica o e-mail que cliente digitou no formulário e o from(para) fica o e-mail da nossa empresa. Mais acontece que não consigo fazer isso, da http 500, então eu coloco o e-mail da nossa empresa para o to(de) e from(para) para funcionar, mais fica horrivel.
Resumindo, quero colocar o: $email = $_POST["email"];
Que é o e-mail onde o cliente vai colocar no formulário.
No: $headers .= 'From: ' . $email . $quebra_linha;
Mais ao fazer isso da http 500 e no mail eu coloco headers e etc: mail($email_to,
"Formulário",
$mens
,$headers,
);
Meu código:
email.htm
<html> <head> <script language="javascript"> function checa_formulario(email){ if (email.nome_para.value == ""){ alert("Por Favor nao deixe o nome em branco!!!"); email.nome.focus(); return (false); } if (email.email.value == ""){ alert("Nao deixe o email destinatario em branco!!!"); email.email.focus(); return (false); } if (email.assunto.value == ""){ alert("Nao deixe o assunto em branco!!!"); email.assunto.focus(); return (false); } } </script> <title>Enviando e-mail com anexo através do PHP</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- .email { text-transform: lowercase; } .texto { color: #0000FF } .style1 {color: #FF0000} --> </style> </head> <body onLoad="document.email.nome.focus();"> <form onSubmit="return checa_formulario(this)" action="envia2.php" method="post" enctype="multipart/form-data" name="email"> <input type=hidden name="recipient" value='criacao@imaxcomunicacao.com.br'> <input type=HIDDEN name="subject" value="Trabalhe Conosco"> <input type=hidden name="redirect" value='http://www.strategique.com.br/Obrigadotra.htm'> <h1 align="center" class="style1">Formulário de email com anexo </h1> <table width="32%" border="0" align="center"> <tr> <td><div align="right"><span class="texto">Para</span></div></td> <td><input name="nome_para" type="text" id="nome_para"></td> </tr> <tr> <td><div align="right" class="texto">Email</div></td> <td><input name="email" type="text" id="email"> </tr> <tr> <td><div align="right" class="texto">Assunto</div></td> <td><input name="assunto" type="text" id="assunto"></td> </tr> <tr> <td><div align="right" class="texto">Mensagem</div></td> <td><textarea name="mensagem" cols="50" rows="10" id="mensagem"></textarea></td> </tr> <tr> <td><div align="right" class="texto">Anexo</div></td> <td><input name="arquivo" type="file"></td> </tr> <tr> <td> </td> <td><input type="submit" name="Submit" value="Enviar"></td> </tr> </table> </form> </body> </html>
envia2.php
<?php /*Verifica qual é o sistema operacional e ajusta a quebra da linha funcional do cabeçalho de e-mail para Windows e Linux Existem diferenças entre o ambiente Linux e Windows, por isso a validação abaixo configura a variável $quebra_linha com o caracter correto para cada sistema_operacional Windows utiliza "\r\n" Linux utiliza "\n" */ if(PHP_OS == "Linux") $quebra_linha = "\n"; //Se for Linux elseif(PHP_OS == "WINNT") $quebra_linha = "\r\n"; // Se for Windows else die("Este script não esta preparado para funcionar com o sistema operacional de seu servidor"); //define os dados do remetente (deve ser um e-mail do seu domínio conforme determina a RFC 822) $email_to = 'web@master.com.br'; //pego os dados enviados pelo formulário $nome_para = $_POST["nome_para"]; $email = $_POST["email"]; $mensagem = $_POST["mensagem"]; $assunto = $_POST["assunto"]; //formato o campo da mensagem $mensagem = wordwrap( $mensagem, 50, "<br>", 1); //valido os emails if (!ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$", $email)){ echo('<center>Digite um email valido</center>'); echo('<center><a href="java script:history.go(-1)">Voltar</center></a>'); exit; } $arquivo = isset($_FILES["arquivo"]) ? $_FILES["arquivo"] : FALSE; if(file_exists($arquivo["tmp_name"]) and !empty($arquivo)){ $fp = fopen($_FILES["arquivo"]["tmp_name"],"rb"); $anexo = fread($fp,filesize($_FILES["arquivo"]["tmp_name"])); $anexo = base64_encode($anexo); fclose($fp); $anexo = chunk_split($anexo); $mensagem_cabecalho = '<P><FONT color=#3300ff size=5>Mensagem entregue com sucesso!!!</FONT></P> <P>Esse email é um teste enviado no formato HTML via PHP mail();!</P> <TABLE> <TBODY> <TR> <TH bgColor=#ff6666><FONT color=#ffffff><SPAN style="BACKGROUND-COLOR: #ff0000">Locaweb</SPAN></FONT></TH> <TR> <TD align=middle>Keep it simple</TD></TR></TBODY></TABLE>'; $boundary = 'XYZ-' . date("dmYis") . '-ZYX'; $mens = '--' . $boundary . $quebra_linha; $mens .= 'Content-Transfer-Encoding: 8bits' . $quebra_linha; $mens .= 'Content-Type: text/html; charset="ISO-8859-1"' . $quebra_linha . $quebra_linha; $mens .= $mensagem_cabecalho . $quebra_linha; $mens .= "Assunto: $assunto" . '<br>' . $quebra_linha = "\r\n"; $mens .= "Mensagem: $mensagem" . $quebra_linha = "\r\n"; $mens .= '--' . $boundary . $quebra_linha; $mens .= 'Content-Type: ' . $arquivo["type"] . $quebra_linha; $mens .= 'Content-Disposition: attachment; filename="' . $arquivo["name"] . '"' . $quebra_linha; $mens .= 'Content-Transfer-Encoding: base64' . $quebra_linha . $quebra_linha; $mens .= $anexo . $quebra_linha; $mens .= '--' . $boundary . '--' . $quebra_linha; $headers = 'MIME-Version: 1.0' . $quebra_linha; $headers = "From: ".$email; $headers .= 'Content-type: multipart/mixed; boundary="' . $boundary . '"' . $quebra_linha; $headers .= $boundary . $quebra_linha; //envio o email com o anexo mail($email_to, "Trabalhe Conosco", $mens ,$headers, ); echo('Email enviado com Sucesso!'); } ?>
Muito obrigado e desculpa o incomodo.
- Fórum WMO
- → Viewing Profile: Tópicos: Dhio
- Privacy Policy
- Regras ·