如何在php邮件函数中逐行发送消息

如何在php邮件函数中逐行发送消息,php,html,email,Php,Html,Email,我需要发送一个邮件消息作为段落或作为一行一行,如果从html表单获取的消息 “这是第一行 此id为“第二行” 我从表单中获取值,如下所示 $mesg= mysqli_real_escape_string($con, $_POST['message']); $mess= nl2br($mesg); $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' .

我需要发送一个邮件消息作为段落或作为一行一行,如果从html表单获取的消息 “这是第一行 此id为“第二行” 我从表单中获取值,如下所示

$mesg= mysqli_real_escape_string($con, $_POST['message']);
$mess= nl2br($mesg);
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: '.$from."\r\n".
'X-Mailer: PHP/' . phpversion();
$message  ='<html><body>';
$message .='<p>Message : '.strip_tags($mess).'</p>';
$message .='</body></html>';
$mesg=mysqli\u real\u escape\u字符串($con,$\u POST['message']);
$mess=nl2br($mesg);
$headers='MIME版本:1.0'。“\r\n”;
$headers.='内容类型:文本/html;字符集=iso-8859-1'。“\r\n”;
$headers.='From:'.$From.\r\n。
“X-Mailer:PHP/”。phpversion();
$message='';
$message.='message:'.strip_标签($mess)。'

'; $message.='';

但邮件是以单行的形式显示和发送的。我发现了一个类似的问题,但答案对我帮助不大

您需要使用html标记

,因为您的内容类型是
text/html


它在没有
内容类型
标题的情况下工作,因为这样您的电子邮件将被解释为纯文本。如果你真的想使用
\n
你应该使用内容类型:
text/plain
,但是你会丢失任何标记。

mysqli\u real\u escape\u string
如果你只有一行要显示,为什么要发送恼人的html电子邮件?对于普通的纯文本消息,换行符会显示得很好,并且您不会无缘无故地将简单文本放大到其大小的三倍。您不会给阅读器带来安全问题。
nl2br()
的使用是正确的,但您正在使用
strip\u tags()
再次剥离它。您应该首先使用
strip_tags()
,然后使用
nl2br()
--><代码>nl2br(strip_tags($mess))@JonStirling我正在将相同的消息存储到database@vyshaghs因此,当您准备将其添加到数据库而不是电子邮件内容时,请执行此操作(或者更好的做法是,使用准备好的语句并将其全部删除)。