忽略联系表单UTF-8编码

时间:2015-11-20 02:31:15

标签: php ajax utf-8

我正在尝试将UTF-8编码的文本从表单发送到邮件地址,但我得到的只是垃圾字符串,我完全迷失在可能错过了一些UTF-8“魔法”的地方。

我觉得我的代码中有更多UTF-8行,然后其他所有内容组合在一起。谁能发现我错过的东西?我通过几十个主题和页面来讨论同样的问题,但我找不到任何我没有做过的事情。

php文件使用:

header("Content-Type: text/html; charset=utf-8");

我也设置了这样的邮件标题:

$headers .= "Content-Type: text/plain; charset=UTF-8";

Ajax调用如下所示:

$.ajax({
                url: "../php/process.php",
                type: "POST",
                scriptCharset: "utf-8",
                contentType: "application/x-www-form-urlencoded; charset=UTF-8",
                data: {
                    name: name,
                    email: email,
                    message: message
                }

我也试过像这样设置AjaxSetup:

$.ajaxSetup({
                scriptCharset: "utf-8",
                contentType: "application/x-www-form-urlencoded; charset=UTF-8"
            });

我的所有文件都以UTF-8(没有bom)编码,我的联系表单设置为仅接受UTF-8。 HTML文件还具有相应的元标记:

<meta charset="utf-8">

编辑澄清:电子邮件可以是所有语言,但亚洲。所以德语,法语,英语等。常用字母有效(不是它们总是吗?),但是特殊字符不起作用。

收到邮件已收到。如上所述,我的表格中还添加了以下内容。

accept-charset="UTF-8"

那么,还有什么可以尝试的?

0 个答案:

没有答案