PHP邮件中的特殊字符

时间:2013-06-11 22:50:59

标签: php forms email character

我的PHP邮件表单有问题,并且使用丹麦字母Æ,Ø和Å。当通过电子邮件收到它们时,它们看起来就像垃圾一样。

我尝试了函数find和replace,但我根本无法让它工作。

这是我的PHP:

<?php
if (empty($_POST) === false) {
$errors = array();
$navn = $_POST ['navn'];
$adresse = $_POST ['adresse'];
$postby = $_POST ['postby'];
$telefon = $_POST ['telefon'];
$email = $_POST ['email'];
$message = $_POST ['message'];
if (empty($navn) === true || empty($adresse) === true || empty($postby) === true ||        empty($telefon) === true || empty($email) === true || empty($message) === true) {
    $errors[] = 'Du skal skrive i alle felter!';
} else {

}
if (empty($errors) === true) {

}
if (empty($errors) === true) {
    mail('mymail.dk', 'Kontakt fra mydomain.dk', "Navn: " . $_POST["navn"] . "\nAdresse: " . $_POST["adresse"] . "\nPost nr. & By: " . $_POST["postby"] . "\nTelefon: " . $_POST["telefon"] . "\nEmail: " . $_POST["email"] . "\nBesked: " . $_POST["message"], 'From: ' . 'mydomain.dk');
    header('Location: tak-for-din-mail.php');
    exit();
}
}
?>

3 个答案:

答案 0 :(得分:0)

这听起来像个字符编码问题。您应该可以在PHP E-Mail Encoding找到更多信息。

答案 1 :(得分:0)

您必须为mail()方法的其他参数提供utf8字符集。  阅读手册。

答案 2 :(得分:0)

在PHP文件中声明一个类似这样的标题

header("Content-type: text/html; charset=UTF-8");