我已经开发了一个简单的php联系表单,工作正常,但我无法根据我的要求格式化邮件正文,我的代码如下,我收到的是单行格式的邮件,
我希望在这条新线路上的每一条信息如下所示
"姓名:Syed Sheeraz Ahmed
联系电话:03453594552
电邮:abc@abc.com
地址:R-47,北区9区.
要求:你好,你好吗?"
<?php
$to = "sheery_1@hotmail.com";
$subject = "From Website Contact Form";
$name = $_REQUEST['name'] ;
$contact = $_REQUEST['contact'] ;
$address = $_REQUEST['address'] ;
$MESSAGE_BODY = "Name: ".$_POST["name"]."<br>";
$MESSAGE_BODY .= "Contact No: ".$_POST["contact"]."<br>";
$MESSAGE_BODY .= "Email: ".$_POST["email"]."<br>";
$MESSAGE_BODY .= "Address: ".$_POST["address"]."<br>";
$MESSAGE_BODY .= "Requirement: ".nl2br($_POST["message"])."<br>";
$message = $_REQUEST['message' + 'address' + 'contact'] ;
$from = $_REQUEST['email'] ;
$headers = "From:" . $from;
mail($to,$subject,$MESSAGE_BODY,$headers);
echo "Mail Sent.";
?>
Run Code Online (Sandbox Code Playgroud)
Que*_*tin 15
你想要一个新的line(\n)而不是HTML换行符(<br>),因为你的电子邮件没有被标记为有一个HTML主体(并且具有HTML主体的电子邮件应该真正具有包含纯文本和HTML版本的多部分MIME主体,因为"仅HTML" "是垃圾邮件探测器的一个很好的标志.
正如您在电子邮件内容中使用html标记一样.
设置content- type text/html邮件的标题
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
Run Code Online (Sandbox Code Playgroud)
要么
你可以使用phpmailer来避免这类问题
小智 5
如果您的电子邮件是以文本形式发送,则
标签将不执行任何操作 尝试使用新的行字符,例如:
$ MESSAGE_BODY ="姓名:".$ _ POST ["name"]."\n";
这应该解决你的问题.
在上面的例子<br>中打印变量后打印,为什么?如何删除<br>
例如:
$_Post["name"]有价值"jhon".
它打印:jhon<br>