【问题标题】:Encoding issues with PHP contact formPHP 联系表单的编码问题
【发布时间】:2011-08-17 08:29:21
【问题描述】:

我是 PHP、HTML 和编程的新手。 我正在尝试使用 PHP 和 HTML 创建一个联系表单。 一切正常,我可以收到电子邮件。 除了一件事,如果我想用另一种语言填写表格,在我的情况下是希伯来语,我收到的邮件是乱码。 我使用 UTF-8 编码保存了 html 文件,并添加了元代码。检查了我的 Outlook 编码并检查了我使用 webinteface 收到的邮件,但它仍然是乱码。

有什么想法吗?

【问题讨论】:

  • 你试过utf8_encode(youstringhere)吗?
  • 请显示更多您的代码,以及您实际发送这些电子邮件的方式。这里涉及许多步骤,如果处理不当,编码可能会搞砸。

标签: php html encoding


【解决方案1】:

首先,尝试将电子邮件的内容“回显”到浏览器而不是发送出去。

那么你就可以注意邮件的格式了。

如果您要发送电子邮件,您需要为电子邮件设置正确的标头,就像您为网站所做的那样。对于 UTF-8,你会这样做:

$headers = "From: ExRobot <robot@example.com>\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=utf-8\r\n";
$headers .="Content-Transfer-Encoding: 8bit";

如果您的主题也可能包含外语,您可以将其设置为

"=?utf-8?B?".base64_encode($subject)."?="

如果这没有帮助,请在收到时在此处发布完整的示例电子邮件。这将有助于理解问题所在。

【讨论】:

    猜你喜欢
    • 2016-02-10
    • 2023-04-10
    • 2016-03-26
    • 2016-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多