PHP Pear邮件HTML版本

PHP Pear邮件HTML版本,php,html,email,pear,Php,Html,Email,Pear,我只能发送带有文本的电子邮件,但没有一个脚本可以发送HTML。我关闭了身份验证,谷歌应用程序正在基于服务器IP进行身份验证 $message = 'Blah blah blah'; require_once "Mail.php"; $from = "mycompany <service@mycompany.com>"; $to = $fName.$lName." <".$email.">"; $subject = "Hello from mycompany!"; $b

我只能发送带有文本的电子邮件,但没有一个脚本可以发送HTML。我关闭了身份验证,谷歌应用程序正在基于服务器IP进行身份验证

$message = 'Blah blah blah';


require_once "Mail.php";
$from = "mycompany <service@mycompany.com>";
$to = $fName.$lName." <".$email.">";
$subject = "Hello from mycompany!";
$body =

'Dear '.$fName.',

Thank you for your interest in mycompany. We have received your inquiry and will contact you within 24 hours.

Thanks,

Timothy Elliott - Owner/CEO mycompany';

                      $host = "tls://smtp-relay.gmail.com";
                      $port = "465";
                      $username = "";
                      $password = "";
                      $headers = array (
                        'From' => $from,
                        'To' => $to,
                        'Subject' => $subject);
                      $smtp = Mail::factory('smtp',
                        array ('host' => $host,
                          'port' => $port,
                          'auth' => false,
                          'username' => $username,
                          'password' => $password));
                      $mail = $smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {
 echo("There was an error, please try again.");
}
$message='Blah Blah Blah';
需要一次“Mail.php”;
$from=“mycompany”;
$to=$fName.$lName.“;
$subject=“你好,我的公司!”;
$body=
“亲爱的”。$fName,
感谢您对我公司的兴趣。我们已收到您的询价,将在24小时内与您联系。
谢谢
Timothy Elliott——mycompany的所有者/首席执行官;
$host=”tls://smtp-relay.gmail.com";
$port=“465”;
$username=“”;
$password=“”;
$headers=数组(
'From'=>$From,
'至'=>$至,
“主题”=>$Subject);
$smtp=Mail::工厂('smtp',
数组('host'=>$host,
“端口”=>$port,
'auth'=>false,
“用户名”=>$username,
“密码”=>$password));
$mail=$smtp->send($to、$headers、$body);
if(PEAR::isError($mail)){
echo(“出现错误,请重试”);
}

这段代码工作正常,但我无法将其作为HTML消息发送。

使用PEAR Mail很容易-您只需要使用PEAR Mail\u Mime对发送电子邮件的HTML部分进行编码

为此扩展您的代码,它应该如下所示:

<?php
require_once "Mail.php";
require_once "Mail/mime.php";

$from = "mycompany <service@mycompany.com>";
$to = $fName.$lName." <".$email.">";
$subject = "Hello from mycompany!";
$html = <<< HTML
<b>Dear $fName</b>,
<p>
Thank you for your interest in mycompany. We have received your inquiry and will contact you within 24 hours.
</p>
Thanks,<br/>

<i>Timothy Elliott - Owner/CEO mycompany</i>
HTML;

$host = "tls://smtp-relay.gmail.com";
$port = "465";
$username = "";
$password = "";
$headers = [
    'From' => $from,
    'To' => $to,
    'Subject' => $subject
];

$crlf = "\n";
$mime = new Mail_mime(['eol' => $crlf]);
$mime->setHTMLBody($html);
$body = $mime->get();
$headers = $mime->headers($headers);


$smtp = Mail::factory('smtp',
    [
    'host' => $host,
    'port' => $port,
    'auth' => false,
    'username' => $username,
    'password' => $password
    ]
);
$mail = $smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {
    echo("There was an error, please try again.");
}

用Pear邮件发送HTML消息并不容易。你可能会考虑使用类似或OHH好的东西来知道!但我在共享服务器上,无法安装任何脚本:(该死的肥牛!!:(无需安装。您可以将Zend Mail和Swift Mailer与自己的PHP脚本并行上载。它们不需要在服务器端进行任何特殊设置。PHPMailer如何?是的。PHP Mailer只是需要包含的两个类文件。它支持html和内联图像。html部分中的某些内容给了我PHP错误…我得到了一个unep脚本末尾的ected end如果使用heredoc符号设置HTML,则需要确保结束标记“HTML;”位于行的最开头,前面没有空格/制表符。