本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

无法使重音功能在通过我的电子邮件表单发送的消息上起作用。有人可以帮我吗?这是我的代码:

发布于2024-11-26 13:24     阅读(296)     评论(0)     点赞(30)     收藏(3)


消息显示的内容如下: Cão açorda água côco teste acentuação

这就是我想要它展示的内容: Cão açorda água côco teste acentuação

有人能帮我一下吗?我将非常感激。

<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    if(!empty($_POST['contactname']) && !empty($_POST['contactemail']) && !empty($_POST['contactmessage'])) {
        $to = 'email@gmail.com'; // Your e-mail address here.
        $body = "\nNCliente: {$_POST['contactname']}\nEmail: {$_POST['contactemail']}\n\n\n{$_POST['contactmessage']}\n\n";
        mail($to, "Mensagem de ", $body, "From: {$_POST['contactemail']}"); // E-Mail subject here.
    }
}
?>

解决方案


这看起来像是一个编码问题。如果您想显示像“ç”这样的葡萄牙语典型字符,您需要将文本参数解码为 UTF-8 模式。这样,它们就会被正确显示。

为此,您可以尝试使用PHP 中的utf8_decode(string)函数。如下所示:

$contactname = utf8_decode($_POST['contactname']);

编辑:您的代码看起来像这样:

<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
if(!empty($_POST['contactname']) && !empty($_POST['contactemail']) && !empty($_POST['contactmessage'])) {

    //this is the part where you convert to utf8 pattern
    $namecontact = utf8_decode($_POST['contactname']);
    $messagecontact = utf8_decode($_POST['contactmessage']);

    $to = 'email@gmail.com'; // Your e-mail address here.

    $body = "\nNCliente: " .$namecontact. "\nEmail: {$_POST['contactemail']}\n\n\n". $messagecontact ."\n\n";
    mail($to, "Mensagem de ", $body, "From:" . $namecontact); // E-Mail subject here.
}
}
?>


所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.phpheidong.com/blog/article/555032/b1771abfb01217574125/

来源:php黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

30 0
收藏该文
已收藏

评论内容:(最多支持255个字符)