发送HTML电子邮件
可能的重复:
发送HTML电子邮件
从php
我正在通过我的Gmail帐户使用PHP发送电子邮件。而且我正在使用SSMTP,而不是Sendmail。我正在使用以下PHP代码发送邮件。
$to = "mymail@gmail.com";
$from = "mymail@gmail.com";
$subject = "Testing mail";
$header = "MIME-Version: 1.0rn";
$header .= "Content-type: text/html; charset: utf8rn";
$headers = "From:" . $from;
$message = "<html><body><head></head>";
$message .= "<h1>Hello, World!</h1>";
$message .= "</body></html>";
if(mail($to,$subject,$message,$headers)){
echo "Mail Sent.";
} else {
echo 'failed';
}
但是我收到的邮件如下
<html><body><head></head><h1>Hello, World!</h1></body></html>
这可能是什么原因?我在Ubuntu中使用SSMTP MTA。
尝试在代码中使用以下内容
$headers .= "Content-Type: text/html; charset=ISO-8859-1rn";
此链接将最有用
使用PHP
您使用的是标题(单数)和标题(复数)。正确的方法是为标题使用复数:
$headers = "From: " . strip_tags($_POST['req-email']) . "rn";
$headers .= "MIME-Version: 1.0rn";
$headers .= "Content-Type: text/html; charset=ISO-8859-1rn";
这是一个很好的阅读:http://css-tricks.com/sending-nice-html-email-with-php/
使用此
<?php
$to = "mymail@gmail.com";
$from = "mymail@gmail.com";
$subject = "Testing mail";
$header = "MIME-Version: 1.0rn";
$header .= "Content-Type: text/html; charset=ISO-8859-1rn";
$header .= "From:" . $from;
$message = "<html><body><head></head>";
$message .= "<h1>Hello, World!</h1>";
$message .= "</body></html>";
if(mail($to,$subject,$message,$headers)){
echo "Mail Sent.";
} else {
echo 'failed';
}
?>
那是因为php不会自我创造新的线条。您可以使用Echo" Lalala n"来制作新线条。