PHP mailer没有';我不能用HTML格式工作
我使用的是一个非常标准的电子邮件创建功能,我以前也使用过,但由于某种原因,我不明白它不起作用。无论我在里面放了什么内容,它都会发送一封空白电子邮件PHP mailer没有';我不能用HTML格式工作,php,html,email,Php,Html,Email,我使用的是一个非常标准的电子邮件创建功能,我以前也使用过,但由于某种原因,我不明白它不起作用。无论我在里面放了什么内容,它都会发送一封空白电子邮件 function sendToUser($email,$admin_email,$subject,$content){ $to=$email; $random_hash = md5(date('r', time())); $headers = "From: Site Name <$admin_email>";
function sendToUser($email,$admin_email,$subject,$content){
$to=$email;
$random_hash = md5(date('r', time()));
$headers = "From: Site Name <$admin_email>";
$headers .= "\r\nReply-To: $admin_email";
$headers .= "\r\nContent-Type: multipart/alternative; boundary=\"PHP-alt-".$random_hash."\"";
ob_start(); //Turn on output buffering
?>
--PHP-alt-<?php echo $random_hash; ?>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
<?php echo $content; ?>
--PHP-alt-<?php echo $random_hash; ?>--
<?
//copy current buffer contents into $message variable and delete current output buffer
$message = ob_get_clean();
mail($to, $subject, $message, $headers);
}
它发送电子邮件,但到达时却是空的。有人看到这里出了什么问题吗?或者可能是我不熟悉的服务器设置?--PHP alt-
--PHP alt-
内容类型:文本/纯文本;charset=“utf-8”
内容传输编码:7bit
--PHP alt---
如果在调用mail()函数之前将var\u dump
转储,那么$message
的内容是什么?--PHP alt-@Matt没有,我刚才检查过。制作邮件头很痛苦。你为什么不使用PHPMailer?@robert根据你发布的代码,是的。我自己也有过同样的问题;这就是解决方案。我在上面发布的帮助中的var\u dump($message)
的结果是否有任何帮助?@robert除非它被包装在
标记中,否则不会-web浏览器倾向于去除多个空白字符。顺便说一句,var\u dump()
使您的输出之前似乎有空白。但我现在查看它,没有空白,是否存在不可见空白?我甚至尝试手动重新键入整个函数,但同样的问题仍然存在。如果不是空白,我将不得不再看一眼,但代码对我来说很好。
sendToUser("myprivatemail@yahoo.com","admin@site.com","Testing","E-mail content");
function sendToUser($email,$admin_email,$subject,$content){
$to=$email;
$random_hash = md5(date('r', time()));
$headers = "From: Site Name <$admin_email>";
$headers .= "\r\nReply-To: $admin_email";
$headers .= "\r\nContent-Type: multipart/alternative; boundary=\"PHP-alt-".$random_hash."\"";
ob_start(); //Turn on output buffering
?>
--PHP-alt-<?php echo $random_hash; ?>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
<?php echo $content; ?>
--PHP-alt-<?php echo $random_hash; ?>--
<?
//copy current buffer contents into $message variable and delete current output buffer
$message = ob_get_clean();
mail($to, $subject, $message, $headers);
}