PHP mail function outlook UTF8

2019-09-06 13:51发布

问题:

My script:

$message = "
<html>
<head>
  <title>Birthday Reminders for August</title>
  <style>td,tr{border:solid 1px black;}</style>
  <meta charset='UTF-8'>
</head>
<body>
  <table>
  <tr><td>სახელი</td><td>{$_POST['firstname']}</td></tr>
  <tr><td>გვარი</td><td>{$_POST['lastname']}</td></tr>
  <tr><td>დაბადების თარიღი</td><td>{$_POST['birthday']}</td></tr>
  <tr><td>მოქალაქეობა</td><td>{$_POST['cityzen']}</td></tr>
  <tr><td>პირადი ნომერი</td><td>{$_POST['id_number']}</td></tr>
  </table>
</body>
</html>
";

// To send HTML mail, the Content-type header must be set
//MUSHA
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; utf-8' . "\r\n";

// Additional headers
$headers .= 'To: Mary <aaa.wwww@gmail.com>, Kelly <kelly@example.com>' . "\r\n";
$headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n";
$headers .= 'Cc: birthdayarchive@example.com' . "\r\n";
$headers .= 'Bcc: birthdaycheck@example.com' . "\n";

// Mail it
mail($to, $subject, $message, $headers);

I've tested it on gmail.com, yahoo.com, outlook.com and everything works great.

but in MS Outlook it has problem of UTF-8.

example http://oi62.tinypic.com/xpzi3l.jpg

回答1:

Try using:

$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";


回答2:

try adding

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

to in top of your php file. Also Which version of Outlook you use?