2012-06-14 41 views
0

我有一个联系人页面(contact.php),当人们填写联系方式时发送一个表单(formsend.php)。PHP表单 - 发送的电子邮件不支持字符

的contact.php有:

<!DOCTYPE html> 
    <html lang="pt-br"> 
    <head> 
     <meta charset="ISO-8859-1"> 

Contact.php页是好的,我的显示葡萄牙拉丁字符罚款(A,E等)。

但是,当我收到的电子邮件(当它使用formsend.php),我得到的领域的人搞砸字符签署了:若昂是JOA£O等

在formsend.php我已经尝试添加:

$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; 

header('Content-Type: text/html; charset=iso-8859-1'); 

<!DOCTYPE html> 
    <html lang="pt-br"> 
    <head> 
     <meta charset="ISO-8859-1"> 

。什么都没有

看来这是在这里失败的formsend.php文件。

我该怎么做才能确保在电子邮件中用用户信息接收格式正确的字符?

+1

切换到utf8。 – 2012-06-14 21:32:26

+0

将电子邮件编码切换到utf8。 – hakre

+0

zundarz

回答

1

是的,您可以尝试切换utf-8: ,也不要忘记更改标题信息。 ,但你也需要将用户输入的文本转换为utf-8在这种情况下,你将没有问题...我有亚美尼亚人的同样的问题...

+0

我已经把标题('内容 - 类型:text/html; charset = utf-8');在sendform.php中 - 它不工作,所有与我交谈的人都建议使用相同的标题(header,utf-8),但我不知道它为什么不是工作。顺便说一下contact.php需要或者它不会显示任何l联系页面表单上的atin字符。 Contact.php页面是好的,我只有sendform.php的问题(发送电子邮件我收到他们与有趣的人物)。 –

+0

阅读这篇文章:http://unicode.org/faq/unicode_web.html它可能是有帮助的 – encoder

+0

只是将用户输入转换为utf-8更好:在word中将它添加到html文件女巫头和aferwords将wholl页面保存为一个字符串,并将其作为电子邮件内容... – encoder