繁体   English   中英

pear_mime / Pear_Mail上的HTML电子邮件问题

[英]problem with HTML email on pear_mime/Pear_Mail

我有问题,我使用Pear_mailMail_mime函数发送带附件的邮件,一切正常与gmail,但在* live.com和* mail.ru地址我有问题,编码不工作,IDK从哪里开始。

试图改变unicode选项,但没有运气。

$to = "$email";
$cc = 'registration@tafu.edu.ge';
$recipients = $to.", ".$cc;

$email_subject = "Registration";
$email_body = '<html>
<head>
  <title>Registration</title>
</head>
<body>
  <p>'.$firstname.', your status has been confirmed.</p>

</body>
</html>' ;


$headers = array ('From' => $email_from, 'To' => $to, 'Subject' => $email_subject, 'Reply-To' => $email_address,     'MIME-Version' => 1, 'Content-type' => 'text/html;charset=utf-8');

$crlf = "\n";

$mime = new Mail_mime(array('eol' => $crlf));

$mime->setHTMLBody($email_body);
$mime->addAttachment($path1, 'image/jpeg');
$mime->addAttachment($path, 'image/jpeg');
$mimeparams['text_encoding']="8bit"; 
$mimeparams['text_charset']="UTF-8"; 
$mimeparams['html_charset']="UTF-8"; 
$mimeparams['head_charset']="UTF-8"; 
$email_body = $mime->get($mimeparams);
$headers = $mime->headers($headers);


$mail = $smtp->send($recipients, $headers, $email_body);


if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
}

正如我说gmail上的一切正常,这里是live.com的例子

- = _ 4e8df4505d0670b28bd8f214089c1ef5 Content-Transfer-Encoding:quoted-printable Content-Type:text / html; charset = UTF-8 = E1 = 83 = 90 = E1 = 83 = 9C = E1 = 83 = 98,= E1 = 83 = 97 = E1 = 83 = A5 = E1 = 83 = 95 = E1 = 83 = 94 = E1 = = 83 = 9C = E1 = 83 = 98 = E1 = 83 = 9B = E1 = 83 = 9D = E1 = 83 = 9C = E1 = 83 = 90 = E1 = 83 = AA = E1 = 83 = 94 = E1 = = 83 = 9B = E1 = 83 = 94 = E1 = 83 = 91 = E1 = 83 = 98 = E1 = 83 = 93 = E1 = 83 = 90 = E1 = 83 = A4 = E1 = 83 = 98 = E1 = = 83 = A5 = E1 = 83 = A1 = E1 = 83 = 98 = E1 = 83 = A0 = E1 = 83 = 93 = E1 = 83 = 90。 = E1 = 83 = 9D = E1 = 83 = A0 = E1 = 83 = 98 = E1 = 83 = A1 = E1 = 83 = 90 = E1 = 83 = 9B = E1 = 83 = A3 = E1 = 83 = = A8 = E1 = 83 = 90 = E1 = 83 = 9D = E1 = 83 = 93 = E1 = 83 = A6 = E1 = 83 = 98 = E1 = 83 = A1 = E1 = 83 = 92 = E1 = 83 = = 90 = E1 = 83 = 9C = E1 = 83 = 9B = E1 = 83 = 90 = E1 = 83 = 95 = E1 = 83 = 9A = E1 = 83 = 9D = E1 = 83 = 91 = E1 = 83 = 90 = = E1 = 83 = A8 = E1 = 83 = 98 = E1 = 83 = 97 = E1 = 83 = A5 = E1 = 83 = 95 = E1 = 83 = 94 = E1 = 83 = 9C = E1 = 83 = 9B = = E1 = 83 = 98 = E1 = 83 = 98 = E1 = 83 = A6 = E1 = 83 = 94 = E1 = 83 = 91 = E1 = 83 = 97 = E1 = 83 = 9E = E1 = 83 = 90 = = E1 = 83 = A1 = E1 = 83 = A3 = E1 = 83 = AE = E1 = 83 = A1 = E1 = 83 = A0 = E1 = 83 = 94 = E1 = 83 = 92 = E1 = 83 = 98 = = E1 = 83 = A1 = E1 = 83 = A2 = E1 = 83 = A0 = E1 = 83 = 90 = E1 = 83 = AA = E1 = 83 = 98 = E1 = 83 = 98 = E1 = 83 = A1 = = E1 = 83 = 97 = E1 = 83 = 90 = E1 = 83 = 9D = E1 = 83 = 91 = E1 = 83 = 90 = E1 = 83 = 96 = E1 = 83 = 94。 = E1 = 83 = 92 = E1 = 83 = 97 = E1 = 83 = AE = E1 = 83 = 9D = E1 = 83 = 95 = E1 = 83 = 97,= E1 = 83 = 92 = E1 = = 83 = 90 = E1 = 83 = 93 = E1 = 83 = 90 = E1 = 83 = AE = E1 = 83 = 94 = E1 = 83 = 93 = E1 = 83 = 9D = E1 = 83 = 97 = E1 =

没有附件的BTW一切都还可以,这是没有附件的代码

$to = $_GET['email'];
$firstname = $_GET['firstname'];
$email_subject = "Failed";
$email_body = '<html>
<head>
  <title>Failed</title>
</head>
<body>
<p>'.$firstname.', ERROR!</p>
</body>
</html>' ;


$headers = array ('From' => $email_from, 'To' => $to, 'Subject' => $email_subject, 'Reply-To' => $email_address,     'MIME-Version' => 1,    'Content-type' => 'text/html;charset=utf-8');

$mail = $smtp->send($to, $headers, $email_body);


if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
}

已解决,删除'text / html; charset = utf-8',一切正常......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM