转换用户输入数据?

时间:2012-06-18 11:49:39

标签: php forms input iso-8859-1

我的表单存在拉丁字符问题(葡萄牙语)。如果用户使用特殊字符提交了他的信息,我会在电子邮件中收到包含混乱字符的信息。其余的都很好(表单页面显示特殊字符,只有我收到的电子邮件中的字符与用户信息混乱)。

长话短说,我可能已经找到了修复它的地方。 Where,但不是How。

以下是我认为可以解决的问题:

    $content = $fields['name'] . " has sent you a message through the your Form:\r\n\n";
    $content .= "-------\n" . $fields['message'] . "\r\n\n";
    $content .= "Contact reason: " . $fields['contact_reason']
            . " \n\nEmail: " . $fields['email']
            . " \n\nPhone: " . $fields['phone'] . " \n\n";

如何添加一些代码,以便我可以将用户输入数据转换为ISO-8859-1?或者这不是正确的地方吗?

P.S。:这是我购买的剧本。所有者没有回复,也没有提供支持。

2 个答案:

答案 0 :(得分:1)

首先,你必须知道葡萄牙语字符是否可以完全转换为ISO-8859-1(检查一下,甚至不能转换所有欧洲语言,例如匈牙利语ű和ű不能转换为ISO-8859- 1)。如果没有,您将不得不更改电子邮件的设置。如果是,您可能希望使用utf8_decodembstringiconv

答案 1 :(得分:0)

这是固定的。

解决方案是在第一篇文章的特定字段中添加MIME。