发送包含希腊字符的电子邮件未正确显示(使用 HTML、Javascript、PHP)

Sending an email with greek characters doesn't show up correctly (Using HTML,Javascript,PHP)

我正在尝试创建一个联系表单,该表单会打开一个新的 window 进行确认,并且从那个 window,它必须打开包含我在表单中填写的详细信息的 Outlook。我知道我必须使用某种编码,但我就是无法让它工作。 我从我的代码中修改了它,使用你从 contact.html 开始的实际代码,你输入你的详细信息,然后单击提交,然后 form.php 打开显示数据,它有隐藏的输入框,也有数据,因此他们可以使用 mailto 在邮件中显示。 Image

My form.php code

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Test</title>
    <link rel="stylesheet" type="text/css" href="style.css">
  </head>
  <body>
    <form action="mailto:abc123@gmail.com" method="post" enctype="x-www-form-urlencoded">
      <table>
 <tr>
          <td>Name:</td>
          <td><input id="name" type="text" name="name" value="Ύθιρτυθριςδ"></td>
        </tr>
        <tr>
          <td>Surname:</td>
          <td><input id="surname" type="text" name="surname" value="κσξγΙέκεε"></td>
        </tr>
 <tr>
          <td>Tel:</td>
          <td><input id="tel" type="text" name="tel" value="12345"></td>
        </tr>
        <tr>
          <td>E-mail:</td>
          <td><input id="email" type="text" name="email" value="qwerty@gmail.com"></td>
        </tr>
 <tr>
          <td>Request:</td>
          <td><input id="text" type="text" name="Request" value="ΑΒΓΔεζήθίκ"></td>
        </tr>
       </table>
      <br><br>
    <input type="submit" value="Send">
   </form>
  </body>
</html>

您打开电子邮件的脚本当前工作方式如下:

  • 您单击目标 "mailto:"
  • 的提交按钮
  • 邮件程序打开
  • 电子邮件正文充满了 URL(URL 参数)的内容,因此电子邮件正文看起来很神秘。

为了避免这种情况,我建议将发送部分外包给一个函数。 例如。当用户单击提交按钮时,调用函数发送电子邮件并构建实际的 "link",如下所示: "mailto:you@yourdomain.com?subject=YOURSUBJECT&body=YOURCONTENT"

当然,您可以使用表单的值使用字符串连接来构建字符串。这应该可以解决问题。