提交联系表格时,挪威字母“æ,ø,å”未显示

时间:2015-10-23 12:31:26

标签: php html forms utf-8 twitter-bootstrap-3

我创建了一个联系表单,您可以查看它here。当我填写联系表格并转到我的收件箱文件夹时 - 消息中不会显示挪威字母æ,ø,å。

这是我目前添加的内容:

<meta http-equiv="content-type" content="text/html" charset="ISO-8859-1">

我也试过<form accept-charset="ISO-8859-1">,但没有运气。

以下是我提交联系表格后收到的电子邮件的屏幕截图 enter image description here 你可以看到没有æ,ø,å字母。

有什么方法可以解决这个问题吗?

PHP代码:

if (isset($_POST["submit"])) {
    $name = $_POST['name'];
    $email = $_POST['email'];
    $message = $_POST['message'];
    $number = $_POST['number'];
    $from = 'Ny melding sendt fra kontaktskjema på Helsespesialisten.no'; 
    $to = 'test@test'; 
    $subject = 'Helsespesialisten | Du har motatt en ny melding';

    $body = "Fra: $name\n E-post: $email\n Telefonnummer: $number\n Melding: $message\n";

    // Check if name has been entered
    if (!$_POST['name']) {
        $errName = 'Vennligst skriv inn ditt navn';
    }

    // Check if email has been entered and is valid
    if (!$_POST['email'] || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
        $errEmail = 'Vennligst skriv inn din e-post';
    }

    //Check if message has been entered
    if (!$_POST['number']) {
        $errNumber = 'Vennligst skriv inn ditt telefonnummer';
    }


    //Check if message has been entered
    if (!$_POST['message']) {
        $errMessage = 'Vennligst skriv en melding';
    }

    // If there are no errors, send the email
    if (!$errName && !$errEmail && !$errNumber && !$errMessage) {
        if (mail ($to, $subject, $body, $from, $number)) {
            $result='<div class="alert alert-success">Takk for din henvendelse! Vi tar kontakt i løpet av kort tid!</div>';
        } else {
            $result='<div class="alert alert-danger">Beklager, en feil skjedde! Kontakt oss på: +47 35 11 15 40</div>';
        }
    }
}

1 个答案:

答案 0 :(得分:1)

试试这个:

if (isset($_POST["submit"])) {
                        $name = $_POST['name'];
                        $email = $_POST['email'];
                        $message = $_POST['message'];
                        $number = $_POST['number'];
                        $from = 'Ny melding sendt fra kontaktskjema på Helsespesialisten.no'; 
                        $to = 'test@test'; 
                        $subject = 'Helsespesialisten | Du har motatt en ny melding';

                        $headerFields = array(
                            "From: $from",
                            "MIME-Version: 1.0",
                            "Content-Type: text/html;charset=utf-8"
                        );

                        $body = "Fra: $name\n E-post: $email\n Telefonnummer: $number\n Melding: $message\n";

                        // Check if name has been entered
                        if (!$_POST['name']) {
                            $errName = 'Vennligst skriv inn ditt navn';
                        }

                        // Check if email has been entered and is valid
                        if (!$_POST['email'] || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
                            $errEmail = 'Vennligst skriv inn din e-post';
                        }

                        //Check if message has been entered
                        if (!$_POST['number']) {
                            $errNumber = 'Vennligst skriv inn ditt telefonnummer';
                        }


                        //Check if message has been entered
                        if (!$_POST['message']) {
                            $errMessage = 'Vennligst skriv en melding';
                        }

                // If there are no errors, send the email
                if (!$errName && !$errEmail && !$errNumber && !$errMessage) {
                    if (mail ($to, $subject, $body, implode("\r\n", $headerFields))) {
                        $result='<div class="alert alert-success">Takk for din henvendelse! Vi tar kontakt i løpet av kort tid!</div>';
                    } else {
                        $result='<div class="alert alert-danger">Beklager, en feil skjedde! Kontakt oss på: +47 35 11 15 40</div>';
                    }
                }
                    }